Operatorius in
Operatorius in tikrina ar objektas arba masyvas turi savybę
ir grąžina
true arba false.
Sintaksė
'savybė' in objektas;
Pavyzdys
Pažiūrėkime kaip veikia operatorius 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
Pavyzdys
Pažiūrėkime kaip galima pritaikyti operatorių
in savybės buvimui masyve patikrinti:
let arr = ['green', 'red', 'blue', 'pink']
console.log(0 in arr); // true, yra elementas su tokiu indeksu
console.log(4 in arr); // false, nėra elemento su tokiu indeksu
console.log('four' in arr); // false, reikia indekso, o ne elemento reikšmės
console.log('length' in arr); // true, masyvas turi tokią savybę
Pavyzdys
Dažnai vietoj in tikrinama, ar savybė
loginiame kontekste - true:
let obj = {
name: 'John',
height: '177',
};
if ('name' in obj) {} // patikrinimas sąlygoje su in
if (obj.name) {} // bet dažniau rašoma taip
Galima naudoti abu variantus. Bet visada
verta atsiminti, kad tuščia eilutė, 0,
null, NaN ir undefined loginame kontekste
- false. Todėl, jei savybė gali
turėti tokią reikšmę - verta naudoti in.