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 ES2015, 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 ES2015)

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.getPrototypeOf' dans cette spécification.
Standard  
ECMAScript Latest Draft (ECMA-262)
La définition de 'Object.getPrototypeOf' dans cette spécification.
Standard évolutif  

Compatibilité des navigateurs

FonctionnalitéChromeEdgeFirefoxInternet ExplorerOperaSafari
Support simple5 Oui3.5912.15
FonctionnalitéAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Support simple Oui Oui Oui4 Non Oui Oui

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

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,