IE11和JavaScript array.map()

时间:2018-06-13 21:18:45

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

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

  

预期:":"

代码:

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

有任何线索吗?

1 个答案:

答案 0 :(得分:2)

我认为问题不在于地图,我认为问题在于您使用快捷方式将对象属性分配给您指定的部分中的自己的变量。我相信这是一个相对较新的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]; }