Kļūda, strādājot ar elementu masīvu JavaScript
Dažreiz iesācēji programmētāji mēģina strādāt ar elementu masīvu it kā tam būtu tikai viens elements. Apskatīsim, kāda ir šīs kļūdas būtība.
Pieņemsim, ka ir doti rindkopas:
<p>1</p>
<p>2</p>
<p>3</p>
Pieņemsim, ka kāds programmētājs nolēma ierakstīt katrā rindkopā vienu un to pašu vērtību. Lai to izdarītu, viņš iegūsa atsauces uz šiem elementiem mainīgajā:
let elems = document.querySelectorAll('p');
Tad mūsu programmētājs kļūdaini piekļūva mainīgajam tā, it kā tajā būtu tikai viens elements, nevis masīvs. Rezultātā rindkopu teksts nemainīsies, bet, kas raksturīgi, arī kļūdas konsole nebūs:
elems.textContent = '!';
Pareizais risinājums šeit būtu izmantot ciklu, lai izietu cauri elementu masīvam un katram atsevišķam elementam veiktu vajadzīgo darbību:
for (let elem of elems) {
elem.textContent = '!';
}