Operatoren in
Operatoren in kontrollerer om en egenskab findes
i et objekt eller et array og returnerer
true eller false.
Syntaks
'egenskab' in objekt;
Eksempel
Lad os se hvordan operatoren in fungerer:
let obj = {
name: 'Nick',
age: 23,
};
console.log('name' in obj); // true
console.log('age' in obj); // true
console.log('test' in obj); // false
Eksempel
Lad os se hvordan man kan anvende operatoren
in til at kontrollere en egenskab i
et array:
let arr = ['green', 'red', 'blue', 'pink']
console.log(0 in arr); // true, der er et element med dette indeks
console.log(4 in arr); // false, der er intet element med dette indeks
console.log('four' in arr); // false, indeks er påkrævet, ikke elementværdi
console.log('length' in arr); // true, arrayet har denne egenskab
Eksempel
I stedet for in kontrollerer man ofte, om en egenskab i
en logisk kontekst er true:
let obj = {
name: 'John',
height: '177',
};
if ('name' in obj) {} // kontrol i betingelse med in
if (obj.name) {} // men man skriver oftest sådan her
Begge varianter kan bruges. Men man bør altid
huske, at en tom streng, 0,
null, NaN og undefined i en logisk kontekst
- er false. Derfor, hvis en egenskab kan
have en sådan værdi - bør man bruge in.