JavaScriptda elementlarni olishda xatolik
Ba'zan yangi boshlanuvchi dasturchilar DOM elementlar guruhini olish uchun
querySelectorAll usuli o'rniga
querySelector usulidan foydalangan holda xatoga yo'l qo'yishadi.
Keling, ushbu xatoning xarakterli xususiyatlarini ko'rib chiqaylik. Faraz qilaylik, bizda quyidagi abzatslar mavjud:
<p>1</p>
<p>2</p>
<p>3</p>
Bir dasturchi bu abzatslarning matnlarini olish va konsolga chiqarishga qaror qildi. Buning uchun u ushbu elementlarga havolalarni o'zgaruvchiga saqladi, lekin noto'g'ri usuldan foydalangan:
let elems = document.querySelector('p');
Keyin u abzatslarni tsikl bilan aylantirish va har bir abzats matnini konsolga chiqarishga qaror qildi:
for (let elem of elems) {
console.log(elem.textContent);
}
Natijada konsolda xarakterli xato paydo bo'ladi elems is not iterable. Bu xato
elems o'zgaruvchisi iteratsiya qilinmaydigan (iterable emas) ekanligini anglatadi,
ya'ni u massiv yoki for-of tsikli bilan aylantirish mumkin bo'lgan narsa emas.