给定以下代码:
let arr = await fetch(...).then(r => r.json());
for(let [a, b] of arr) {
console.log(a, b);
}
是什么原因导致Chromium/Node. js中出现隐含/无用的错误消息.for is not iterable
?在Firefox中,错误消息为Uncaught TypeError: arr[Symbol.iterator]().next().value is not iterable
。
这让我困惑了几分钟,所以我想在他们把这些错误信息变得更友好之前,有一个SO问题/答案会很有帮助。
2条答案
按热度按时间c9qzyr3d1#
出现此错误的原因是数组包含非数组-例如,它可能包含如下对象:
因此
for/of
代码应该如下所示:nfs0ujit2#
我找到了这个案子的一个很好的答案
需要ES6且仅适用于阵列:
对于任何类型的可迭代对象: