我使用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