1 of 17 menu

Virhe elementtien hakemisessa JavaScriptissä

Joskus aloittelevat ohjelmoijat tekevät virheen käyttämällä DOM-elementtiryhmän hakemiseen menetelmää querySelector menetelmän querySelectorAll sijaan.

Katsotaanpa tämän virheen tunnusomaisia piirteitä. Olkoon annettuna kappaleet:

<p>1</p> <p>2</p> <p>3</p>

Eräs ohjelmoija päätti hankkia ja tulostaa konsoliin näiden kappaleiden tekstit. Hän tallensi viittaukset näihin elementteihin muuttujaan käyttämällä virheellisesti väärää menetelmää:

let elems = document.querySelector('p');

Sitten hän päätti käydä kappaleet läpi silmukalla ja tulostaa jokaisen kappaleen tekstin konsoliin:

for (let elem of elems) { console.log(elem.textContent); }

Tuloksena konsoliin ilmestyy tunnusomainen virhe elems is not iterable. Se kertoo, että muuttuja elems ei ole iteroitavissa, eli se ei ole taulukko tai jotain, jota voidaan käydä läpi for-of -silmukalla.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää