Sobes.tech
Junior

O'zgaruvchida massiv bor-yo'qligini qanday aniqlash mumkin?

sobes.tech AI

AIdan javob

Eng ishonli usul Array.isArray() dan foydalanishdir:

// Qiymat massiv ekanligini tekshiradi
Array.isArray(meningO'zgaruvchim);

Ushbu metod massiv ekanligini true qaytaradi va aks holda false, bajarilish kontekstidan yoki boshqa omillardan qat'i nazar.

Boshqa, kamroq ishonchli usullar quyidagilar:

  1. typeof:

    // Massivlar uchun `typeof` 'object' qaytaradi
    typeof meningO'zgaruvchim === 'object';
    

    Kam ishonchli, chunki typeof ko'plab ma'lumot turlarida 'object' qaytaradi, faqat massivlar uchun emas (ob'ektlar, null).

  2. instanceof:

    // Ob'ekt `Array` sinfining nusxasi ekanligini tekshiradi
    meningO'zgaruvchim instanceof Array;
    

    JavaScriptda turli bajarilish kontekstlari bilan ishlaganda kam ishonchli bo'lishi mumkin, chunki bir kontekstdagi Array boshqasidan farq qilishi mumkin.

  3. Konstruktorni tekshirish:

    // O'zgaruvchining konstruktorining `Array` ekanligini tekshiradi
    meningO'zgaruvchim.constructor === Array;
    

    Bu ham bajarilish kontekstlarida muammo tug‘dirishi mumkin.

Xulosa jadvali:

Usul Ishonchliligi Tavsifi
Array.isArray() Yuqori Massivlarni tekshirish uchun maxsus.
typeof meningO'zgaruvchim Past Massivlar uchun 'object' qaytaradi.
meningO'zgaruvchim instanceof Array O'rtacha/Past (kontekstga qarab) Array sinfiga tegishli ekanligini tekshiradi.
meningO'zgaruvchim.constructor === Array O'rtacha/Past (kontekstga qarab) constructor xususiyatini tekshiradi.

Shuning uchun, Array.isArray() eng afzal va ishonchli usul hisoblanadi.