Operatoren in

Operatoren in sjekker om en egenskap finnes i et objekt eller en array og returnerer true eller false.

Syntaks

javascript'egenskap' in objekt;

Eksempel

La oss se hvordan operatoren in fungerer:

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

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

Eksempel

La oss se hvordan vi kan bruke operatoren in for å sjekke en egenskap i en array:

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

console.log(0 in arr); // true, det finnes et element med denne indeksen
console.log(4 in arr); // false, det finnes ikke noe element med denne indeksen
console.log('four' in arr); // false, indeks er nødvendig, ikke elementverdi
console.log('length' in arr); // true, arrayen har denne egenskapen

Eksempel

Ofte, i stedet for in, sjekker de om en egenskap i en logisk kontekst er true:

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

if ('name' in obj) {} // sjekk i betingelse med in
if (obj.name) {} // men ofte skriver de slik

Begge alternativene kan brukes. Men man bør alltid huske at en tom streng, 0, null, NaN og undefined i en logisk kontekst er false. Følgelig, hvis en egenskap kan ha en slik verdi - bør man bruke in.