Operator in
Operator in menyemak sama ada sifat wujud
pada objek atau array dan mengembalikan
true atau false.
Sintaks
'sifat' in objek;
Contoh
Mari lihat bagaimana operator in berfungsi:
let 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 boleh digunakan
untuk menyemak sifat dalam array:
let arr = ['green', 'red', 'blue', 'pink']
console.log(0 in arr); // true, ada elemen dengan indeks ini
console.log(4 in arr); // false, tiada elemen dengan indeks ini
console.log('four' in arr); // false, perlukan indeks, bukan nilai elemen
console.log('length' in arr); // true, array mempunyai sifat ini
Contoh
Sering kali, bukannya in, mereka menyemak sama ada sifat
dalam konteks boolean - true:
let obj = {
name: 'John',
height: '177',
};
if ('name' in obj) {} // semakan dalam kondisi dengan in
if (obj.name) {} // tetapi lebih kerap ditulis seperti ini
Kedua-dua pilihan boleh digunakan. Tetapi sentiasa
perlu diingat bahawa string kosong, 0,
null, NaN dan undefined dalam konteks boolean
- false. Oleh itu, jika sifat mungkin
mempunyai nilai seperti itu - harus menggunakan in.