Operātors in

Operātors in pārbauda vai objektam vai masīvam ir īpašība un atgriež true vai false.

Sintakse

javascript'īpašība' in objekts;

Piemērs

Apskatīsim kā darbojas operātors 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

Piemērs

Apskatīsim kā var izmantot operatoru in, lai pārbaudītu īpašību masīvā:

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

console.log(0 in arr); // true, ir elements ar šādu indeksu
console.log(4 in arr); // false, nav elementa ar šādu indeksu 
console.log('four' in arr); // false, vajag indeksu, nevis elementa vērtību
console.log('length' in arr); // true, masīvam ir šāda īpašība 

Piemērs

Bieži vien in vietā pārbauda, vai īpašība loģiskajā kontekstā - true:

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

if ('name' in obj) {} // pārbauda nosacījumā ar in
if (obj.name) {} // bet biežāk raksta šādi

Abus variantus var izmantot. Bet vienmēr ir jāatceras, ka tukša virkne, 0, null, NaN un undefined loģiskajā kontekstā - false. Tāpēc, ja īpašībai var būt šāda vērtība - ir jāizmanto in.