diff options
Diffstat (limited to 'files/fr/web/javascript/reference/global_objects/object/isextensible')
| -rw-r--r-- | files/fr/web/javascript/reference/global_objects/object/isextensible/index.md | 105 |
1 files changed, 42 insertions, 63 deletions
diff --git a/files/fr/web/javascript/reference/global_objects/object/isextensible/index.md b/files/fr/web/javascript/reference/global_objects/object/isextensible/index.md index 7446914f88..91f2900829 100644 --- a/files/fr/web/javascript/reference/global_objects/object/isextensible/index.md +++ b/files/fr/web/javascript/reference/global_objects/object/isextensible/index.md @@ -11,34 +11,33 @@ tags: translation_of: Web/JavaScript/Reference/Global_Objects/Object/isExtensible original_slug: Web/JavaScript/Reference/Objets_globaux/Object/isExtensible --- -<div>{{JSRef}}</div> +{{JSRef}} -<p>La méthode <strong><code>Object.isExtensible()</code></strong> permet de déterminer si un objet est extensible (c'est-à-dire qu'on peut lui ajouter de nouvelles propriétés).</p> +La méthode **`Object.isExtensible()`** permet de déterminer si un objet est extensible (c'est-à-dire qu'on peut lui ajouter de nouvelles propriétés). -<div>{{EmbedInteractiveExample("pages/js/object-isextensible.html")}}</div> +{{EmbedInteractiveExample("pages/js/object-isextensible.html")}} -<h2 id="Syntaxe">Syntaxe</h2> +## Syntaxe -<pre class="syntaxbox">Object.isExtensible(<var>obj</var>)</pre> + Object.isExtensible(obj) -<h3 id="Paramètres">Paramètres</h3> +### Paramètres -<dl> - <dt><code>obj</code></dt> - <dd>L'objet dont on souhaite vérifier s'il est extensible.</dd> -</dl> +- `obj` + - : L'objet dont on souhaite vérifier s'il est extensible. -<h3 id="Valeur_de_retour">Valeur de retour</h3> +### Valeur de retour -<p>Un booléen qui indique si oui ou non l'objet passé en argument peut être étendu.</p> +Un booléen qui indique si oui ou non l'objet passé en argument peut être étendu. -<h2 id="Description">Description</h2> +## Description -<p>Par défaut, les objets sont extensibles, on peut leur ajouter de nouvelles propriétés (et pour les moteurs qui supportent {{jsxref("Object.proto", "__proto__")}} {{deprecated_inline}}, leur propriété __proto__ peut être modifiée). Un objet peut devenir non-extensible en utilisant les méthodes {{jsxref("Object.preventExtensions()")}}, {{jsxref("Object.seal()")}}, ou {{jsxref("Object.freeze()")}}.</p> +Par défaut, les objets sont extensibles, on peut leur ajouter de nouvelles propriétés (et pour les moteurs qui supportent {{jsxref("Object.proto", "__proto__")}} {{deprecated_inline}}, leur propriété \_\_proto\_\_ peut être modifiée). Un objet peut devenir non-extensible en utilisant les méthodes {{jsxref("Object.preventExtensions()")}}, {{jsxref("Object.seal()")}}, ou {{jsxref("Object.freeze()")}}. -<h2 id="Exemples">Exemples</h2> +## Exemples -<pre class="brush: js">// Les nouveaux objets sont extensibles. +```js +// Les nouveaux objets sont extensibles. var vide = {}; Object.isExtensible(vide); // true @@ -53,57 +52,37 @@ Object.isExtensible(scellé); // false // Les objets gelés sont également, par définition, non-extensibles. var gelé = Object.freeze({}); Object.isExtensible(gelé); // false -</pre> +``` -<h2 id="Notes">Notes</h2> +## Notes -<p>Pour ES5, si l'argument passé à la méthode n'est pas un objet mais une valeur d'un autre type primitif, cela entraînera une exception {{jsxref("TypeError")}}. Pour ES2015, un argument qui n'est pas un objet sera traité comme un objet ordinaire non-extensible, la méthode renverra <code>false</code>.</p> +Pour ES5, si l'argument passé à la méthode n'est pas un objet mais une valeur d'un autre type primitif, cela entraînera une exception {{jsxref("TypeError")}}. Pour ES2015, un argument qui n'est pas un objet sera traité comme un objet ordinaire non-extensible, la méthode renverra `false`. -<pre class="brush: js">Object.isExtensible(1); +```js +Object.isExtensible(1); // TypeError: 1 n'est pas un objet (code ES5) Object.isExtensible(1); // false (code ES2015) -</pre> - -<h2 id="Spécifications">Spécifications</h2> - -<table class="standard-table"> - <tbody> - <tr> - <th scope="col">Spécification</th> - <th scope="col">État</th> - <th scope="col">Commentaires</th> - </tr> - <tr> - <td>{{SpecName('ES5.1', '#sec-15.2.3.13', 'Object.isExtensible')}}</td> - <td>{{Spec2('ES5.1')}}</td> - <td>Définition initiale. Implémentée avec JavaScript 1.8.5.</td> - </tr> - <tr> - <td>{{SpecName('ES6', '#sec-object.isextensible', 'Object.isExtensible')}}</td> - <td>{{Spec2('ES6')}}</td> - <td> </td> - </tr> - <tr> - <td>{{SpecName('ESDraft', '#sec-object.isextensible', 'Object.isExtensible')}}</td> - <td>{{Spec2('ESDraft')}}</td> - <td> </td> - </tr> - </tbody> -</table> - -<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2> - -<p>{{Compat("javascript.builtins.Object.isExtensible")}}</p> - -<h2 id="Voir_aussi">Voir aussi</h2> - -<ul> - <li>{{jsxref("Object.preventExtensions()")}}</li> - <li>{{jsxref("Object.seal()")}}</li> - <li>{{jsxref("Object.isSealed()")}}</li> - <li>{{jsxref("Object.freeze()")}}</li> - <li>{{jsxref("Object.isFrozen()")}}</li> - <li>{{jsxref("Reflect.isExtensible()")}}</li> -</ul> +``` + +## Spécifications + +| Spécification | État | Commentaires | +| ---------------------------------------------------------------------------------------------------- | ---------------------------- | ------------------------------------------------------- | +| {{SpecName('ES5.1', '#sec-15.2.3.13', 'Object.isExtensible')}} | {{Spec2('ES5.1')}} | Définition initiale. Implémentée avec JavaScript 1.8.5. | +| {{SpecName('ES6', '#sec-object.isextensible', 'Object.isExtensible')}} | {{Spec2('ES6')}} | | +| {{SpecName('ESDraft', '#sec-object.isextensible', 'Object.isExtensible')}} | {{Spec2('ESDraft')}} | | + +## Compatibilité des navigateurs + +{{Compat("javascript.builtins.Object.isExtensible")}} + +## Voir aussi + +- {{jsxref("Object.preventExtensions()")}} +- {{jsxref("Object.seal()")}} +- {{jsxref("Object.isSealed()")}} +- {{jsxref("Object.freeze()")}} +- {{jsxref("Object.isFrozen()")}} +- {{jsxref("Reflect.isExtensible()")}} |
