Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Reflect.isExtensible()
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2016.
La méthode statiqueReflect.isExtensible() permet de déterminer si un objet est extensible (i.e. si on peut lui ajouter de nouvelles propriétés). Elle est semblable à la méthodeObject.isExtensible() (moduloquelques différences).
Dans cet article
Exemple interactif
const object1 = {};console.log(Reflect.isExtensible(object1));// Expected output: trueReflect.preventExtensions(object1);console.log(Reflect.isExtensible(object1));// Expected output: falseconst object2 = Object.seal({});console.log(Reflect.isExtensible(object2));// Expected output: falseSyntaxe
Reflect.isExtensible(cible);Paramètres
cibleL'objet cible dont on souhaite savoir s'il est extensible.
Valeur de retour
Unbooléen qui indique si la cible est extensible ou non.
Exceptions
Description
La méthodeReflect.isExtensible permet de déterminer si un objet est extensible (autrement dit si on peut lui ajouter de nouvelles propriétés). Cette méthode est semblable à la méthodeObject.isExtensible().
Exemples
>UtiliserReflect.isExtensible()
Voir aussiObject.isExtensible().
// Les nouveaux objets sont extensibles.var vide = {};Reflect.isExtensible(vide); // true// ...mais ça peut être changé.Reflect.preventExtensions(vide);Reflect.isExtensible(vide); // false// Par définition, les objets scellés// ne sont pas extensibles.var scellé = Object.seal({});Reflect.isExtensible(scellé); // false// Par définition, les objets gelés sont// également non-extensibles.var gelé = Object.freeze({});Reflect.isExtensible(gelé); // falseDifférence avecObject.isExtensible()
Si le premier argument passé à la méthode n'est pas un objet (autrement dit si la valeur est une valeur primitive), cela provoquera une exceptionTypeError. La méthodeObject.isExtensible() aurait commencé par convertir l'argument en un objet.
Reflect.isExtensible(1);// TypeError: 1 is not an objectObject.isExtensible(1);// falseSpécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-reflect.isextensible> |