РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
2 of 17 menu

JavaScriptda elementni olish xatosi

Ba'zan yangi boshlanuvchi dasturchilar bitta DOM elementini olish uchun querySelector usuli o'rniga querySelectorAll usulidan foydalanish xatosini qilishadi.

Keling, ushbu xatoning xarakterli xususiyatlarini ko'rib chiqaylik. Faraz qilaylik, bizda shunday abzat mavjud:

<p>matn</p>

Bir dasturchi ushbu abzatning matnini o'zgartirishga qaror qildi. Buning uchun u elementga havolani o'zgaruvchiga saqladi, lekin noto'g'ri usuldan foydalandi:

let elem = document.querySelectorAll('p');

Keyin dasturchi abzat matnini o'zgartirishga urindi. Biroq, abzat matni o'zgarmadi:

elem.textContent = '!!!'; // ishlamadi

Bunda konsilda hech qanday xato paydo bo'lmadi. Gap shundaki, bitta element ustida emas, balki guruh ustida amal bajarilgan. Guruh elementlarining matnini shunchaki o'qish yoki o'zgartirib bo'lmaydi - faqat ularni tsikl bilan aylantirib va har bir elementga alohida murojaat qilish orqali.

Xatoni qanday aniqlash mumkin

Keling, dasturchi ushbu xatoni aniqlash uchun qanday harakat qilishi kerakligini ko'rib chiqaylik. Aslida, ma'lum tajribaga ega bo'lsa, uni xarakterli belgilar bo'yicha osongina aniqlash mumkin.

Faraz qilaylik, bu sodir bo'lmadi. Unda dasturchining xatolarni qidirishdagi birinchi harakati o'zgaruvchilarning qiymatlarini konsilda chiqarish bo'lishi kerak. Uning holatida faqat bitta o'zgaruvchi mavjud - elem. Ushbu o'zgaruvchining qiymatini chiqarish va uning ichida nima yotganini ko'rish kerak:

let elem = document.querySelectorAll('p'); console.log(elem); // bitta element emas, balki massivni chiqaradi

Konsilda darhol ko'rinib turibdiki, o'zgaruvchida bitta element emas, balki massiv mavjud. Bu darhol elementni olish usulida xato qilinganligi haqida aniq maslahat beradi.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish