Maison >interface Web >js tutoriel >Différences d'utilisation de JavaScript isPrototypeOf et hasOwnProperty (pratique)

Différences d'utilisation de JavaScript isPrototypeOf et hasOwnProperty (pratique)

亚连
亚连original
2018-05-21 15:02:491630parcourir

Les amis qui ont besoin de conseils sur l'utilisation de JavaScript isPrototypeOf et hasOwnProperty peuvent s'y référer.

1. isPrototypeOf
isPrototypeOf est utilisé pour déterminer si l'objet spécifié object1 existe dans la chaîne de prototypes d'un autre objet object2. Si tel est le cas, il renvoie true, sinon il renvoie false.
Le format est le suivant :
object1.isPrototypeOf(object2);
object1 est une instance d'un objet
object2 est un autre objet dont la chaîne de prototypes sera vérifiée.
Les chaînes de prototypes peuvent être utilisées pour partager des fonctionnalités entre différentes instances du même type d'objet.
Si la chaîne de prototypes d'object2 contient object1, alors la méthode isPrototypeOf renvoie true.
Si object2 n'est pas un objet ou si object1 n'apparaît pas dans la chaîne de prototypes dans object2, la méthode isPrototypeOf retournera false.
Les exemples d'utilisation sont les suivants :

var re = /^s*/;
// Définissez un objet d'expression régulière ici
// Vérifiez si RegExp est l'objet chaîne prototype de re . Renvoie true
var bIsptt = RegExp.prototype.isPrototypeOf(re);

2. hasOwnProperty hasOwnProperty détermine si un objet a un attribut ou un objet nommé. objet. Si la propriété existe dans la chaîne de prototypes, la propriété doit être membre de l'objet lui-même.
Si la propriété ou la méthode est définie par l'objet lui-même plutôt que dans la chaîne de prototypes, retournez true ; sinon, retournez false
Le format est le suivant :
object.hasOwnProperty(proName); >Jugement Le nom de proName n'est pas une propriété ou un objet de l'objet objet. Des exemples d'utilisation sont les suivants :

// Obtient false car les propriétés de la chaîne de prototypes ne peuvent pas être détectées

var bStr = "Test String".hasOwnProperty("split"); Le prototype de l'objet String Cette propriété existe déjà, elle renvoie donc naturellement true
var bStr1 = String.prototype.hasOwnProperty("split");
// Renvoie true car elle ne détecte pas la propriété dans le prototype
var bObj = ({ fnTest:function(){}}).hasOwnProperty("fnTest");

Ce qui précède est ce que j'ai compilé pour vous, j'espère que cela vous sera utile dans le. avenir.

Articles associés :

Différences et scénarios d'application des frameworks JS tels que JQuery, Extjs, YUI, Prototype, Dojo (conseils pratiques)


Analyse complète du type et de la portée de l'objet dans les concepts orientés objet JavaScript (avec exemples)


Focus sur l'attribut __proto__ en JavaScript (images et texte) Tutoriel )

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn