在另一个问题中发布了这个:
this.products = [...document.querySelectorAll('.product')];
Edge将因以下错误而失败:
预期的功能
然而这是有效的:
var params = ['hello', '', 7];
var other = [ 1, 2, ...params];
为什么不是顶级的工作在Edge上(它在Chrome上工作)?
答案 0 :(得分:8)
您可以使用Array.from
,它会从像object这样的数组生成一个数组。
this.products = Array.from(document.querySelectorAll('.product'));
答案 1 :(得分:1)
好吧,看起来Bergi和Felix走在了正确的轨道上:在MDN的这个document中,他们讨论了迭代器。
一些内置构造,例如扩展运算符,在引擎盖下使用相同的迭代协议:
所以Array在{Edge}中有entries()
nodelist
并且不支持迭代。
Nina的答案是转到的!
答案 2 :(得分:0)
更新到2020年,Edge现在内部使用Chrome v8。 要求用户下载Edge的最新版本。无需在旧Edge中照顾这种特定情况。