Bugungi mavzuyimiz top Javascript interview savollarda tushadigan Optional Chaining ( ?. ) operatori haqida bo’ladi. Optinal Chaining juda ko’p joylarda ishlatiladi va eng kerakli operatorlardan biri xisoblanadi qani u nima ekan boshladik!.
Category
JavaScript
Optional Chaining
Javascript interview
Interview
JavaScript operator
Cover
Slug
javascripda-optional-chaining
Date
‣
author
Published
Published
Assalomu Aleykum do’stlar bugun JavaScriptda optional chaining (?.) operatori haqida batafsil to’xtalib o’tamiz.
Optional chaining - bu "Object Property" lariga kirish va qiymatini olish uchun ancha xavfsiz va yaxshi yo'l xisoblanadi.
Xo’sh gap nima xaqida ketaypdi chuqurlashamiz!!!. Umuman olganda obyekt va array elementlariga kirishda mavjud bo'lmagan (undefined yoki null) qiymatlar bilan ishlashni osonlashtiradi. Bu operator kodni soddalashtirish uchun ishlatiladi, va agar biror qiymat mavjud bo'lmasa qiymat value o’rniga undefined qaytardi.
Misol:
Faraz qilaylik, bizda quyidagi obyekt bor:
javascriptCopy code
let user = {
name: 'Anvarbek',
address: {
city: 'Toshkent',
street: 'Navoiy ko‘chasi'
}
};
Agar siz user obyektida city nomli maydonni olishni xohlasangiz, bu yerda hamma narsa oddiy:
console.log(user.address.city); // Toshkent
Lekin, agar user.address mavjud bo'lmasa, bu kod xatoga olib keladi:
let user = {
name: 'Anvar'
};
console.log(user.address.city); // TypeError: Cannot read property 'city' of undefined
Shunday xatoliklarning oldini olish uchun, odatda if operatorlaridan foydalanish kerak bo'ladi:
if (user.address && user.address.city) {
console.log(user.address.city);
}
Ammo bu juda ko'p joylarda ko'pchilik uchun noqulay va uzun bo'lishi mumkin. Aynan mana shunday holatlarda optional chaining operatori yordamga keladi:
console.log(user.address?.city); // undefined (Xatolik kelib chiqmaydi)
Yuqoridagi misolda user.address mavjud bo'lmasa, user.address?.city qiymati undefined bo'ladi va kod davom etadi.
Asosiy qo'llanish joylari:
Obyekt maydonlariga kirishda:
let user = {};
console.log(user.profile?.age); // undefined
Array elementlariga kirishda:
let users = null;
console.log(users?.[0]); // undefined
Funksiyalarni chaqirishda:
let user = {
sayHello: function() {
return "Salom!";
}
};
console.log(user.sayHello?.()); // Salom!
console.log(user.sayGoodbye?.()); // undefined, xatolik yo'q
Yakuniy natija:
Optional chaining yordamida kodni tozalash va ancha xavfsiz yozish mumkin. Bu operator yordamida siz undefined yoki null qiymatlarni tekshirishni avtomatlashtirishingiz mumkin va kodni ko'p joyda qayta yozish zaruriyati yo'q bo'ladi.