L'opérateur in

L'opérateur in vérifie si une propriété existe sur un objet ou un tableau et retourne true ou false.

Syntaxe

javascript'propriété' in objet;

Exemple

Voyons comment fonctionne l'opérateur 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

Exemple

Voyons comment appliquer l'opérateur in pour vérifier une propriété dans un tableau :

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

console.log(0 in arr); // true, il existe un élément avec cet index
console.log(4 in arr); // false, aucun élément avec cet index
console.log('four' in arr); // false, un index est nécessaire, pas la valeur de l'élément
console.log('length' in arr); // true, le tableau possède cette propriété

Exemple

Souvent, au lieu de in, on vérifie que la propriété dans un contexte logique est true :

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

if ('name' in obj) {} // vérification dans la condition avec in
if (obj.name) {} // mais on écrit plus souvent comme ça

Les deux options peuvent être utilisées. Mais il faut toujours se souvenir qu'une chaîne vide, 0, null, NaN et undefined dans un contexte logique sont false. Par conséquent, si la propriété peut avoir une telle valeur - il convient d'utiliser in.