in Operatörü
in operatörü, bir nesnede veya dizide
özellik olup olmadığını kontrol eder ve
true ya da false döndürür.
Sözdizimi
'özellik' in nesne;
Örnek
in operatörünün nasıl çalıştığına bakalım:
let obj = {
name: 'Nick',
age: 23,
};
console.log('name' in obj); // true
console.log('age' in obj); // true
console.log('test' in obj); // false
Örnek
in operatörünün bir dizide özellik kontrolü
için nasıl kullanılabileceğine bakalım:
let arr = ['green', 'red', 'blue', 'pink']
console.log(0 in arr); // true, bu indekste bir eleman var
console.log(4 in arr); // false, bu indekste eleman yok
console.log('four' in arr); // false, eleman değeri değil, indeks gerekli
console.log('length' in arr); // true, dizinin böyle bir özelliği var
Örnek
Genellikle in yerine, bir özelliğin
mantıksal bağlamda - true olup olmadığı kontrol edilir:
let obj = {
name: 'John',
height: '177',
};
if ('name' in obj) {} // in ile koşul kontrolü
if (obj.name) {} // ama daha çok böyle yazılır
Her iki seçenek de kullanılabilir. Ancak
boş string, 0, null, NaN ve
undefined değerlerinin mantıksal bağlamda
- false olduğunu her zaman akılda tutmak gerekir.
Bu nedenle, eğer bir özellik bu tür bir değere
sahip olabilirse - in kullanmak gerekir.