我在 React.js 组件中迭代和 HTMLCollection 时遇到问题。我有以下功能:
shuffleLists = () => {
var elems = document.getElementsByTagName("ul");
console.log(elems)
for (let item of elems) {
console.log(item);
}
}
console.log(elems)
按预期打印出ul
元素的 HTMLCollection。但是 for 循环之后它不会在控制台中打印任何内容,当我希望看到ul
控制台中打印的每个元素时。我究竟做错了什么?
为清楚起见进行编辑:
这里的关键问题是console.log(item)
循环内的行不会向 chrome 开发工具中的控制台输出任何内容,这同样适用于下面的答案和评论中讨论的其他各种循环语法。
我还注意到console.log(elems)
不同浏览器之间记录的长度不同。在 chrome 中我看到HTMLCollection[] length: 10 ...
但在 Firefox 中我看到
HTMLCollection {length 0} ...