我使用babel-polyfill,我尝试使用换的循环迭代的HTMLCollection
对象的HTMLCollection对象:迭代使用-的循环
const elements = document.getElementsByClassName('some-class')
for (const element of elements) {
console.log(element)
}
它不工作。我收到错误elements[Symbol.iterator] is not a function
。如何使其正确工作?
解释一些你误解的东西:core-js是babel-polyfill的一部分,所以将它包含两次没有意义。如果在控制台中键入“Symbol.iterator”,它只意味着此符号存在;它并不一定意味着'elements'具有'Symbol.iterator'属性。 for-of循环不会将任何对象视为数组,它只是调用对象的“@@ iterator”方法。 –
另外,如果您不知道什么是HTMLCollection对象:它是由'document.getElementsByClassName()'返回的对象。 –
@Gothdo,为了澄清,我从未包含core-js和babel-polyfill:我刚刚尝试在不同时间导入它们以查看其中一个或另一个是否有效。尽管如此,谢谢你的澄清。 – thesublimeobject