Fehler: getElementsByClassName() Ergebnisiteration mit Array.forEach
Beim Versuch, mit getElementsByClassName() und dem Array über DOM-Elemente zu iterieren. Bei der Verwendung der forEach-Methode kann es bei Benutzern zu einem Fehler kommen, da getElementsByClassName() kein an zurückgibt Array.
Das Ergebnis von getElementsByClassName() ist eine HTMLCollection, die sich in modernen Browsern von einem Array unterscheidet. Um dieses Problem zu beheben, konvertieren Sie die HTMLCollection in ein Array, bevor Sie forEach verwenden. Dies kann durch die folgenden Methoden erreicht werden:
var els = document.getElementsByClassName("myclass"); Array.prototype.forEach.call(els, function(el) { // Do stuff here console.log(el.tagName); });
[].forEach.call(els, function (el) { // Do stuff here console.log(el.tagName); });
Array.from(els).forEach((el) => { // Do stuff here console.log(el.tagName); });
Das obige ist der detaillierte Inhalt vonWie iteriere ich korrekt über „getElementsByClassName()'-Ergebnisse in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!