javascript - IE11 和 JavaScript array.map()

标签 javascript arrays internet-explorer internet-explorer-11

我在 IE11 下遇到了问题。它抛出一个错误

Expected: ":"

对于那行代码:

this.aAttachments = MessageStore.message().attachments().map(({fileName,mimeType,fileType,fileNameExt,download}) => [fileName,mimeType,fileType,fileNameExt,download]);

在部分

{fileName,mimeType,fileType,fileNameExt,download}

而不是逗号。

文档说 IE 完全支持 map since IE9

有什么线索吗?

最佳答案

我认为问题不在于 map ,我认为问题在于您在指定的那部分使用快捷方式将对象属性分配给它们自己的变量。我相信这是 javascript 的一个相对较新的功能,因此 IE 可能不支持它,因为它似乎远远落后。我建议将您的内联函数更改为

(obj) => [obj.fileName,obj.mimeType,obj.fileType,obj.fileNameExt,obj.download]

看看是否能解决问题。

编辑:有些人还说 IE 也不支持箭头函数,所以就这样吧

function(obj) { return [obj.fileName,obj.mimeType,obj.fileType,obj.fileNameExt,obj.download]; }

关于javascript - IE11 和 JavaScript array.map(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50846429/

相关文章:

javascript - 使用 ie11 更改 javascript 中的函数时遇到问题

javascript - 将 jquery 代码转换为 Angular 代码

javascript - 在页面加载时隐藏 DIV

javascript - 如何将数组写入的字符串转换为真正的数组?

python - 如何在 Flask-Jinja Python 中使用列表中的列表

internet-explorer - IE 中不换行(flexbox)

javascript - typescript 计算数组中的重复项并按每个项目的计数对结果进行排序

javascript - 遍历列表中的对象并返回唯一值

javascript - 如何正确使用 forEach 或拼接

asp.net - Internet Explorer 中的图像加载超时