Оператор in
Оператор in объектда ёки массивда свойства
борлигини текширади ва
true ёки false қайтаради.
Синтаксиси
'свойство' in объект;
Мисол
Оператор in қандай ишлашини кўрамиз:
let obj = {
name: 'Nick',
age: 23,
};
console.log('name' in obj); // true
console.log('age' in obj); // true
console.log('test' in obj); // false
Мисол
Оператор in-ни массивда свойствани
текшириш учун қандай қўллаш мумкинлигини кўрамиз:
let arr = ['green', 'red', 'blue', 'pink']
console.log(0 in arr); // true, шундай индексли элемент мавжуд
console.log(4 in arr); // false, шундай индексли элемент мавжуд эмас
console.log('four' in arr); // false, элементнинг қиймати эмас, индекс керак
console.log('length' in arr); // true, массивда шундай свойства мавжуд
Мисол
Кўпинча in ўрнига, свойстванинг
мантиқий контекстда - true эканлигини текширадилар:
let obj = {
name: 'John',
height: '177',
};
if ('name' in obj) {} // in билан шартда текшириш
if (obj.name) {} // лекин кўпинча шундай ёзадилар
Ҳар икки вариантни қўллаш мумкин. Лекин ҳар доим
эсда тутиш керакки, бош сатр, 0,
null, NaN ва undefined мантиқий контекстда
- false. Шу sababli, агар свойства шундай
қийматга эга бўлиши мумкин бўлса - in-ни қўллаш керак.