Operator in

Operator in memeriksa apakah ada properti pada objek atau array dan mengembalikan true atau false.

Sintaks

javascript'properti' in objek;

Contoh

Mari lihat bagaimana operator in bekerja:

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

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

Contoh

Mari lihat bagaimana operator in dapat digunakan untuk memeriksa properti dalam array:

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

console.log(0 in arr); // true, ada elemen dengan indeks tersebut
console.log(4 in arr); // false, tidak ada elemen dengan indeks tersebut 
console.log('four' in arr); // false, yang dibutuhkan adalah indeks, bukan nilai elemen
console.log('length' in arr); // true, array memiliki properti tersebut 

Contoh

Seringkali alih-alih in, properti diperiksa dalam konteks boolean - true:

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

if ('name' in obj) {} // pemeriksaan dalam kondisi dengan in
if (obj.name) {} // tetapi lebih sering ditulis seperti ini

Kedua opsi dapat digunakan. Namun selalu perlu diingat bahwa string kosong, 0, null, NaN dan undefined dalam konteks boolean - false. Akibatnya, jika properti dapat memiliki nilai seperti itu - sebaiknya gunakan in.