Operaator in
Operaator in kontrollib, kas objektil
või massiivil on omadus, ja tagastab
true või false.
Süntaks
'omadus' in objekt;
Näide
Vaatame, kuidas operaator in töötab:
let obj = {
name: 'Nick',
age: 23,
};
console.log('name' in obj); // true
console.log('age' in obj); // true
console.log('test' in obj); // false
Näide
Vaatame, kuidas saab kasutada operaatorit
in omaduse kontrollimiseks
massiivis:
let arr = ['green', 'red', 'blue', 'pink']
console.log(0 in arr); // true, on element sellise indeksiga
console.log(4 in arr); // false, puudub element sellise indeksiga
console.log('four' in arr); // false, vaja on indeksit, mitte elemendi väärtust
console.log('length' in arr); // true, massiivil on selline omadus
Näide
Sageli in asemel kontrollitakse, et omadus oleks
loogilises kontekstis - true:
let obj = {
name: 'John',
height: '177',
};
if ('name' in obj) {} // kontroll tingimuses koos in-iga
if (obj.name) {} // kuid sageli kirjutatakse nii
Mõlemat varianti saab kasutada. Kuid alati
tuleb meeles pidada, et tühi string, 0,
null, NaN ja undefined on loogilises kontekstis
- false. Seega, kui omadus võib
omada sellist väärtust - tuleks kasutada in.