Object.getPrototypeOf()
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 juillet 2015.
La méthode Object.getPrototypeOf() renvoie le prototype d'un objet donné (i.e. la valeur de la propriété [[Prototype]] interne).
Exemple interactif
const prototype1 = {};
const object1 = Object.create(prototype1);
console.log(Object.getPrototypeOf(object1) === prototype1);
// Expected output: true
Syntaxe
js
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
js
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.
js
Object.getPrototypeOf("toto");
// TypeError: "toto" n'est pas un objet (code ES5)
Object.getPrototypeOf("toto");
// String.prototype (code ES2015)
Spécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-object.getprototypeof> |
Compatibilité des navigateurs
Voir aussi
Object.prototype.isPrototypeOf()Object.setPrototypeOf()Object.prototype.__proto__- Le billet de John Resig sur getPrototypeOf (en anglais)
Reflect.getPrototypeOf()