[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible [Back]  [Original]

Object.isExtensible() - JavaScript | MDN

Cette page a t traduite partir de l'anglais par la communaut. Vous pouvez contribuer en rejoignant la communaut francophone sur MDN Web Docs.

View in English Always switch to English

Object.isExtensible()

Baseline Large disponibilit

Cette fonctionnalit est bien tablie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.

La mthode Object.isExtensible() permet de dterminer si un objet est extensible (c'est--dire qu'on peut lui ajouter de nouvelles proprits).

Dans cet article

Exemple interactif

const object1 = {};

console.log(Object.isExtensible(object1));
// Expected output: true

Object.preventExtensions(object1);

console.log(Object.isExtensible(object1));
// Expected output: false

Syntaxe

js
Object.isExtensible(obj);

Paramtres

obj

L'objet dont on souhaite vrifier s'il est extensible.

Valeur de retour

Un boolen qui indique si oui ou non l'objet pass en argument peut tre tendu.

Description

Par dfaut, les objets sont extensibles, on peut leur ajouter de nouvelles proprits (et pour les moteurs qui supportent Object.prototype.__proto__ , leur proprit __proto__ peut tre modifie). Un objet peut devenir non-extensible en utilisant les mthodes Object.preventExtensions(), Object.seal(), ou Object.freeze().

Exemples

js
// Les nouveaux objets sont extensibles.
var vide = {};
Object.isExtensible(vide); // true

// ...mais on peut les rendre non-extensibles.
Object.preventExtensions(vide);
Object.isExtensible(vide); // false

// Les objets scells sont, par dfinition, non-extensibles.
var scell = Object.seal({});
Object.isExtensible(scell); // false

// Les objets gels sont galement, par dfinition, non-extensibles.
var gel = Object.freeze({});
Object.isExtensible(gel); // false

Notes

Pour ES5, si l'argument pass la mthode n'est pas un objet mais une valeur d'un autre type primitif, cela entranera une exception TypeError. Pour ES2015, un argument qui n'est pas un objet sera trait comme un objet ordinaire non-extensible, la mthode renverra false.

js
Object.isExtensible(1);
// TypeError: 1 n'est pas un objet (code ES5)

Object.isExtensible(1);
// false                           (code ES2015)

Spcifications

Spcification
ECMAScript 2027 LanguageSpecification
# sec-object.isextensible

Compatibilit des navigateurs

Voir aussi


Web Proxy Viewer  |  New URL  |  Original Page