但是,当我尝试在 Edge 中加载此页面时,问题和答案消失了。仅发布类别。此外,当尝试在 IE 中加载此页面时,除了搜索栏外,所有内容都消失了。
Edge 给我以下错误:
SCRIPT1028:SCRIPT1028:faq.html 第 84 行的预期标识符、字符串或数字
这是指以下代码:
function sortByCategory(data) {
return data.reduce((obj, c) => {
const { category, ...rest } = c; // this line throws the error
obj[category] = obj[category] || [];
obj[category].push(rest);
return obj;
}, {});
}
我该如何解决?
原文由 Maurits Bouman 发布,翻译遵循 CC BY-SA 4.0 许可协议
看起来(令人惊讶的是)Edge 还不支持 property rest,这很不幸,但它只是在 ES2018 中才被正式添加。您需要重写代码以不使用属性 rest(
...rest
对象文字的一部分)(或者,如 CertainPerformance 建议的 那样,使用转译器)。这是执行此操作的多种方法 _之一_:
我避免使用
delete
因为delete
在对象上取消优化对象,使属性查找变慢。但是仅仅取消优化这些对象可能不会对您的页面/应用程序的感知速度产生任何影响,所以……