我有以下一行javascript代码
var res = Object.keys(packages).filter(e => packages[e] === true)
以上在除IE之外的所有其他浏览器中都能很好地工作。 IE在=>
抱怨Syntax错误,有人可以告诉我如何在IE中解决这个问题
答案 0 :(得分:3)
IE不得支持箭头功能。只需使用旧的function
关键字即可。
.filter(function(e){ return packages[e] === true })
旁注,但您也可以将其写为:
.filter(function(e){ return packages[e] })
除非packages[e]
必须实际上完全等于true
,而不仅仅是真理。
答案 1 :(得分:1)
IE不支持胖箭头符号(Edge确实)。见http://kangax.github.io/compat-table/es6/。您需要较旧的函数表示法:
var res = Object.keys(packages).filter(function(e) { return packages[e] === true })
答案 2 :(得分:1)
CanIUse: Arrow function你不能在IE中使用它;
var res = Object.keys(packages).filter(function(e) = {return packages[e] === true})