Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. Référence
  4. Objets natifs standards
  5. Object
  6. Object.prototype.isPrototypeOf()

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 EnglishAlways switch to English

Object.prototype.isPrototypeOf()

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éthodeisPrototypeOf() permet de tester si un objet existe dans la chaîne de prototypes d'un autre objet.

Exemple interactif

function Foo() {}function Bar() {}Bar.prototype = Object.create(Foo.prototype);const bar = new Bar();console.log(Foo.prototype.isPrototypeOf(bar));// Expected output: trueconsole.log(Bar.prototype.isPrototypeOf(bar));// Expected output: true

Note :isPrototypeOf() est différent de l'opérateurinstanceof. Dans l'expression "object instanceof AFunction", on compare la chaîne de prototypes d'object avecAFunction.prototype et non avecAFunction.

Syntaxe

js
prototypeObj.isPrototypeOf(objet);

Paramètres

objet

L'objet dont la chaîne de prototypes sera parcourue.

Valeur de retour

UnBoolean indiquant si l'objet appelant se trouve dans sa chaîne de prototypes de l'objet indiqué.

Erreurs déclenchées

TypeError

Une exceptionTypeError est déclenchée siprototypeObj estundefined ounull.

Description

La méthode isPrototypeOf () vous permet de vérifier si un objet existe ou non dans la chaîne de prototypes d'un autre objet.

Exemples

Cet exemple montre queBidule.prototype,Truc.prototype,Machin.prototype etObject.prototype font bien partie de la chaîne de prototype pour l'objetbidule :

js
function Machin() {}function Truc() {}function Bidule() {}Truc.prototype = Object.create(Machin.prototype);Bidule.prototype = Object.create(Truc.prototype);var bidule = new Bidule();console.log(Bidule.prototype.isPrototypeOf(bidule)); // trueconsole.log(Truc.prototype.isPrototypeOf(bidule)); // trueconsole.log(Machin.prototype.isPrototypeOf(bidule)); // trueconsole.log(Object.prototype.isPrototypeOf(bidule)); // true

La méthodeisPrototypeOf(), avec l'opérateurinstanceof en particulier, s'avère particulièrement utile si vous avez du code qui ne peut fonctionner que lorsqu'il traite des objets descendant d'une chaîne de prototypes donnée, par ex., pour garantir que certaines méthodes ou propriétés seront présentes dans cet objet.

Par exemple, vérifier quebidule descend bien deMachin.prototype :

js
if (Toto.prototype.isPrototypeOf(bidule)) {  // effectuer quelque chose de sûr}

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-object.prototype.isprototypeof

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2025 Movatter.jp