isNaN
funksiyasi
isNaN
- bu JavaScriptdagi o’rnatilgan funksiya bo’lib, u berilgan qiymat raqam emasligini (Not-a-Number) tekshiradi. Agar argument raqam emas bo’lsa, u true
qaytaradi, aks holda false
qaytaradi.
Sintaksis:
isNaN(value)
isNaN
bilan ishlash:
-
Raqamlar bilan ishlash:
console.log(isNaN(123)); // false (123 - raqam) console.log(isNaN('123')); // false ('123' raqam sifatida qabul qilinadi) console.log(isNaN('Hello')); // true ('Hello' raqamga o'zgartirilmaydi) console.log(isNaN(NaN)); // true (NaN - raqam emas)
-
Bo’sh string va
null
:console.log(isNaN('')); // false (bo'sh string 0 ga o'zgartiriladi) console.log(isNaN(null)); // false (null 0 ga o'zgartiriladi)
-
Boolean qiymatlar:
console.log(isNaN(true)); // false (true 1 ga o'zgartiriladi) console.log(isNaN(false)); // false (false 0 ga o'zgartiriladi)
-
Obyektlar:
console.log(isNaN({})); // true (obyektlar raqamga o'zgartirilmaydi) console.log(isNaN([])); // false (bo'sh array 0 ga o'zgartiriladi) console.log(isNaN([1, 2])); // true (array raqamga o'zgartirilmaydi)
isNaN
vs Number.isNaN
isNaN
ba’zan qiymatni raqamga o’zgartiradi va shundan keyin tekshiradi. Bu esa ba’zan kutilmagan natijalarga olib kelishi mumkin. Number.isNaN
esa faqatgina NaN
qiymatini tekshiradi va konversiya qilmaydi.
Misol:
console.log(isNaN('123ABC')); // true
console.log(Number.isNaN('123ABC')); // false (chunki '123ABC' hech qachon NaN bo'lmaydi)
Nullish values (qiymatlar)
Nullish values deganda JavaScriptda null
va undefined
qiymatlariga nisbatan ishlatiladigan atama tushuniladi. Bu qiymatlar mavjud emas yoki belgilangan emas degan ma’noni anglatadi.
null
va undefined
haqida batafsil:
-
null
:-
Bu qiymat mavjud bo’lmasligi yoki ataylab “bo’sh” o’zgaruvchi sifatida belgilanishi uchun ishlatiladi.
-
Misol:
let name = null;
-
-
undefined
:-
Bu qiymat o’zgaruvchi e’lon qilingan, lekin unga qiymat berilmagan holatni bildiradi.
-
Misol:
let age; console.log(age); // undefined
-
Nullish Coalescing Operator (??
):
??
operatori “null” yoki “undefined” qiymatlar bilan ishlaydi va agar chap tomondagi ifoda null
yoki undefined
bo’lsa, o’ng tomondagi qiymatni qaytaradi.
Misol:
let name = null;
let defaultName = "Guest";
let finalName = name ?? defaultName;
console.log(finalName); // "Guest" (chunki name = null)
??
operatori null
va undefined
ni tekshiradi, boshqa “falsy” qiymatlar (masalan, 0
, false
, ""
) ??
orqali zaxira qiymat sifatida olinmaydi, shuning uchun ular o’z qiymatlarini saqlab qoladi.
Xulosa:
isNaN
funksiyasi berilgan qiymatning raqam emasligini tekshiradi.- Nullish values (
null
vaundefined
) mavjud bo’lmagan yoki belgilangan bo’lmagan qiymatlar uchun ishlatiladi. - Nullish coalescing operator (
??
)null
yokiundefined
bo’lsa, zaxira qiymatni qaytaradi.
Ulashish: