Xatolarni debug qilish

ULASHISH

Keng tarqalgan xatolar izohi

JavaScript xato xabarlari qo‘rqinchli ko‘rinadi, lekin ularning aksariyati juda oddiy narsalarni anglatadi.

Ushbu sahifa yangi boshlanuvchilar uchun qulay tilda eng ko‘p uchraydigan xatolarni tushuntiradi.

Xato xabarlari — bu yo‘l ko‘rsatuvchi ishoralar.

Ular qaerga qarash kerakligini va qanday xatolik yuz berganini aytadilar.


Xato xabarini qanday o‘qish kerak

Xato xabari odatda uchta muhim qismdan iborat.

  • Xato tipi.
  • Qisqa tushuntirish.
  • Qator raqami.

Kodning aniq qatoriga o‘tish uchun konsoldagi qator raqamini bosing.


Referans xatosi

ReferenceError o‘zgaruvchi yoki funksiya nomi mavjud emasligini bildiradi.

Bunga ko‘pincha noto‘g‘ri imlo yoki yetishmayotgan deklaratsiya sabab bo‘ladi.

Misol:

console.log(myValue);

JavaScript says it cannot find myValue.

Imloni tekshiring va o‘zgaruvchi let yoki const bilan e’lon qilinganligiga ishonch hosil qiling.


TypeError

TypeError siz qiymatni noto‘g‘ri ishlatganingizni anglatadi.

Bu odatda undefined yoki null bilan sodir bo‘ladi.

Misol:

let x;
console.log(x.length);

O‘zgaruvchi mavjud, lekin uning qiymati yo‘q.

undefined’dan xususiyatlarni o‘qib bo‘lmaydi.

Foydalanishdan oldin qiymatni yozib oling.


SyntaxError

SyntaxError JavaScript kodingizni tushuna olmasligini bildiradi.

Bunga ko‘pincha qavslar yoki qavslar etishmasligi sabab bo‘ladi.

Misol:

if (x == 5 {
  console.log("Hello");
}

Yopuvchi qavs yetishmayapti.

Sintaksis xatolar skriptning ishlashini to‘xtatadi.


NaN xatolari

NaN Not a Number (son emas) degan ma’noni anglatadi.

Bu JavaScript to‘g‘ri matematik amalni bajara olmaganda yuz beradi.

Misol:

let result = "abc" * 5;
console.log(result);

Natijada NaN.

Matematik amallarni bajarishdan oldin ikkala qiymat ham son ekanligini tekshiring.


"Cannot read property of undefined" xatosi

Bu boshlang‘ichlarning eng keng tarqalgan xatolaridan biridir.

Bu siz mavjud bo‘lmagan narsadan foydalanishga harakat qilayotganingizni anglatadi.

Misol:

let user;
console.log(user.name);

O‘zgaruvchi mavjud, lekin obyekt yo‘q.


Keng tarqalgan xatolarning ma’nolari

  • ReferenceError nom aniqlanmaganligini bildiradi.
  • TypeError qiymat noto‘g‘ri ishlatilganini bildiradi.
  • SyntaxError means broken code structure.
  • NaN means invalid math.

Debug qilish bo‘yicha maslahat

Xatolarni e’tiborsiz qoldirmang.

Davom etishdan oldin birinchi xatoni tuzating.

Bitta xato ko‘pincha boshqa ko‘plab xatolarga sabab bo‘ladi.


Keyingi: asinxron kodni debug qilish

Asinxron kod yangi turdagi xatolarni (bug) keltirib chiqaradi.

Keyingi sahifada fetch() debug, va’dalar va asinxronizatsiya funksiyalari ko‘rsatilgan.


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!