Operator in

Operator in obyektin və ya massivin property-si olub-olmadığını yoxlayır və true ya da false qaytarır.

Sintaksis

javascript'property' in obyekt;

Nümunə

Gəlin operator in-in necə işlədiyinə baxaq:

javascriptlet obj = {
  name: 'Nick',
  age:  23,
};

console.log('name' in obj); // true
console.log('age'  in obj); // true
console.log('test' in obj); // false

Nümunə

Gəlin operator in-in massivdə property-ni yoxlamaq üçün necə tətbiq oluna biləcəyinə baxaq:

javascriptlet arr = ['yaşıl', 'qırmızı', 'mavi', 'çəhrayı']

console.log(0 in arr); // true, belə bir indeksli element var
console.log(4 in arr); // false, belə bir indeksli element yoxdur 
console.log('four' in arr); // false, elementin qiyməti deyil, indeks lazımdır
console.log('length' in arr); // true, massivin belə bir property-si var 

Nümunə

Çox vaxt in əvəzinə property-nin məntiqi kontekstdə - true olub-olmadığını yoxlayırlar:

javascriptlet obj = {
  name: 'John',
  height: '177',
};

if ('name' in obj) {} // şərtdə in ilə yoxlama
if (obj.name) {} // amma daha çox belə yazırlar

Hər iki variantdan istifadə etmək olar. Ancaq həmişə yadda saxlamalıyıq ki, boş sətir, 0, null, NaN və undefined məntiqi kontekstdə - false-dir. Nəticə etibarilə, əgər property bu cür qiymət ala bilərsə - in istifadə etmək lazımdır.