ელემენტების მიღების შეცდომა JavaScript-ში
ზოგჯერ დამწყები პროგრამისტები უშვებენ შეცდომას,
DOM ელემენტების ჯგუფის მისაღებად
querySelector მეთოდის ნაცვლად querySelectorAll
მეთოდის გამოყენებით.
მოდით შევხედოთ ამ შეცდომის დამახასიათებელ ნიშან-თვისებებს. დავუშვათ, გვაქვს მოცემული პარაგრაფები:
<p>1</p>
<p>2</p>
<p>3</p>
რაღაც პროგრამისტმა გადაწყვიტა მიეღო და კონსოლში გამოეტანა ამ პარაგრაფების ტექსტები. ამისთვის მან მიიღო მითითებები ამ ელემენტებზე ცვლადში, შემთხვევით გამოიყენა არასწორი მეთოდი:
let elems = document.querySelector('p');
შემდეგ მან გადაწყვიტა პარაგრაფები ციკლით გადაეუარა და გამოეტანა თითოეული პარაგრაფის ტექსტი კონსოლში:
for (let elem of elems) {
console.log(elem.textContent);
}
შედეგად კონსოლში გამოჩნდება დამახასიათებელი
შეცდომა elems is not iterable. ის ამბობს,
რომ ცვლადი elems არ არის იტერირებადი,
ანუ არ არის მასივი ან ისეთი რამ,
რაც შეიძლება გადავუაროთ for-of ციკლით.