gpt4 book ai didi

javascript - 边 : SCRIPT1028: Expected identifier, 字符串或数字

转载 作者:数据小太阳 更新时间:2023-10-29 05:53:41 29 4
gpt4 key购买 nike

我的页面在 Chrome 和 Firefox 中运行良好: enter image description here

但是,当我尝试在 Edge 中加载此页面时,问题和答案消失了。仅发布类别。此外,当尝试在 IE 中加载此页面时,除了搜索栏之外的所有内容都消失了。

Edge 给我以下错误:

SCRIPT1028: SCRIPT1028: Expected identifier, string or number on line 84 of faq.html

这里指的是下面的代码:

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;
}, {});
}

我该如何解决这个问题?

最佳答案

Edge 似乎(令人惊讶地)还不支持 property rest,这很不幸,但后来才在 ES2018 中正式添加。您需要重写代码以不使用属性 rest(对象文字的 ...rest 部分)(或者,作为 CertainPerformance suggests,使用转译器)。

这是实现此目的的多种方法中的一种:

function sortByCategory(data) {
return data.reduce((obj, c) => {
//const { category, ...rest } = c;
const { category } = c;
const rest = {};
for (const key of Object.keys(c)) {
if (key !== "category") {
rest[key] = c[key];
}
}
obj[category] = obj[category] || [];
obj[category].push(rest);
return obj;
}, {});
}

我避免使用 delete 因为对象上的 delete 会取消优化对象,使属性查找变慢。但是,仅取消优化这些对象可能不会对您的页面/应用程序的感知速度产生任何影响,所以...

关于javascript - 边 : SCRIPT1028: Expected identifier, 字符串或数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53628191/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com