Operatorul in

Operatorul in verifică dacă o proprietate există într-un obiect sau array și returnează true sau false.

Sintaxă

javascript'proprietate' in obiect;

Exemplu

Să vedem cum funcționează operatorul in:

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

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

Exemplu

Să vedem cum poate fi aplicat operatorul in pentru a verifica o proprietate într-un array:

javascriptlet arr = ['green', 'red', 'blue', 'pink']

console.log(0 in arr); // true, există un element cu acest index
console.log(4 in arr); // false, nu există element cu acest index
console.log('four' in arr); // false, este nevoie de index, nu de valoarea elementului
console.log('length' in arr); // true, array-ul are această proprietate

Exemplu

Deseori în loc de in se verifică dacă proprietatea în context logic - true:

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

if ('name' in obj) {} // verificare în condiție cu in
if (obj.name) {} // dar mai des se scrie așa

Ambele variante pot fi utilizate. Dar întotdeauna trebuie să ne amintim că un șir gol, 0, null, NaN și undefined în context logic - false. Prin urmare, dacă o proprietate poate avea o astfel de valoare - trebuie utilizat in.