Elementide hankimise viga JavaScriptis
Mõnikord teevad algajad programmeerijad vea,
kasutades DOM elementide rühma hankimiseks
meetodit querySelector meetodi asemel
querySelectorAll.
Vaatame selle vea iseloomulikke omadusi. Olgu antud lõigud:
<p>1</p>
<p>2</p>
<p>3</p>
Mingi programmeerija otsustas hankida ja väljastada konsooli nende lõikude tekstid. Selleks sai ta viited nendele elementidele muutujasse, ekslikult kasutades vale meetodit:
let elems = document.querySelector('p');
Seejärel otsustas ta läbida lõigud tsükliga ja väljastada iga lõigu teksti konsooli:
for (let elem of elems) {
console.log(elem.textContent);
}
Tulemusena kuvatakse konsoolis iseloomulik
viga elems is not iterable. See ütleb,
et muutuja elems ei ole itereritav,
see tähendab, et see ei ole massiiv ega midagi,
mida saab läbida tsükliga for-of.