Reflect.has()

La méthode statique Reflect.has() fonctionne comme l'opérateur in mais sous forme d'une fonction.

Syntaxe

Reflect.has(cible, cléPropriété)

Paramètres

cible
L'objet cible dont on souhaite savoir s'il contient la propriété donnée.
cléPropriété
Le nom de la propriété dont on souhaite vérifier la présence.

Valeur de retour

Un booléen qui indique si la propriété recherchée est présente sur l'objet cible.

Exceptions

Une erreur TypeError si cible n'est pas un Object.

Description

La méthode Reflect.has vous permet de vérifier si une propriété est présente sur un objet. C'est une fonction qui agit comme l'opérateur in.

Exemples

Reflect.has({x: 0}, "x"); // true
Reflect.has({x: 0}, "y"); // false

// renvoie true pour les propriétés présentes
// grâce à la chaîne de prototypes
Reflect.has({x: 0}, "toString");

// Proxy avec la méthode .has()
obj = new Proxy({}, {
  has(t, k) { return k.startsWith("bou"); }
});
Reflect.has(obj, "bouchon"); // true
Reflect.has(obj, "bonbon");  // false

Spécifications

Spécification État Commentaires
ECMAScript 2015 (6th Edition, ECMA-262)
La définition de 'Reflect.has' dans cette spécification.
Standard Définition initiale.
ECMAScript (ECMA-262)
La définition de 'Reflect.has' dans cette spécification.
Standard évolutif  

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi