【发布时间】:2018-06-15 01:57:15
【问题描述】:
我使用 JavaScript reduce() 方法来计算有多少条目具有相同的值。
如果我将代码与 Firefox 52 浏览器一起使用,一切正常。但是如果我在 Internet Explorer 11 中使用代码,调试器会告诉我,脚本中有错误:
const data = [{
'jahr': '2017',
'monat': '3'
},
{
'jahr': '2017',
'monat': '3'
},
{
'jahr': '2017',
'monat': '4'
}
];
map = new Map,
ergebnisMonat = data.reduce((r, {
jahr,
monat
}) => {
var datum = [monat, jahr].join('-');
if (!map.has(datum)) {
map.set(datum, {
datum,
anzahl: 0
});
r.push(map.get(datum));
}
map.get(datum).anzahl++;
return r;
}, []);
console.log(ergebnisMonat);
SCRIPT1003: ':' 预期
调试器告诉我这里应该有“:”:
ergebnisMonat = data.reduce((r, {
jahr**here ERROR**,
monat
reduce() 方法从 IE 9 版本开始就与 IE 兼容。所以我不知道为什么它在 Firefox 中有效,而在 IE 11 中无效。有什么想法吗?
感谢您的帮助。
【问题讨论】:
-
不支持它的析构函数而不是reduce
-
我认为不支持的部分是对象解构和箭头函数。
标签: javascript arrow-functions destructuring