La méthode Object.getPrototypeOf()
renvoie le prototype d'un objet donné (i.e. la valeur de la propriété [[Prototype]]
interne).
Syntaxe
Object.getPrototypeOf(obj)
Paramètres
obj
- L'objet dont on souhaite obtenir le prototype.
Valeur de retour
Le prototype de l'objet passé en argument. Si aucune propriété n'est héritée, c'est la valeur null
qui est renvoyée.
Exemples
var proto = {}; var obj = Object.create(proto); Object.getPrototypeOf(obj) === proto; // true
Notes
Pour ES5, la méthode renvoie une exception TypeError
si le paramètre obj
n'est pas un objet. Pour ES6, le paramètre sera converti en un objet avant l'application de la méthode.
Object.getPrototypeOf("toto"); // TypeError: "toto" n'est pas un objet (code ES5) Object.getPrototypeOf("toto"); // String.prototype (code ES6)
Spécifications
Spécification | État | Commentaires |
---|---|---|
ECMAScript 5.1 (ECMA-262) La définition de 'Object.getPrototypeOf' dans cette spécification. |
Standard | Définition initiale |
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'Object.getProtoypeOf' dans cette spécification. |
Standard | |
ECMAScript 2017 Draft (ECMA-262) La définition de 'Object.getProtoypeOf' dans cette spécification. |
Projet |
Compatibilité des navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Support simple | 5 | 3.5 (1.9.1) | 9 | 12.10 (maybe earlier) | 5 |
Fonctionnalité | Android | Chrome pour Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support simple | ? | ? | ? | ? | ? | ? |
Notes relatives à Opera
Bien que les anciennes versions d'Opera ne supportent pas Object.getPrototypeOf()
, Opera supporte la propriété non-standard __proto__
depuis Opera 10.50.
Voir aussi
Object.prototype.isPrototypeOf()
Object.setPrototypeOf()
Object.prototype.__proto__
- Le billet de John Resig sur getPrototypeOf (en anglais)
Reflect.getPrototypeOf()
Étiquettes et contributeurs liés au document
Étiquettes :
Contributeurs à cette page :
SphinxKnight
Dernière mise à jour par :
SphinxKnight,