Maison >interface Web >js tutoriel >Comment déterminer si un objet JS possède un certain attribut

Comment déterminer si un objet JS possède un certain attribut

高洛峰
高洛峰original
2017-02-08 17:29:001125parcourir

Si un objet JS a un certain attribut

Deux manières, mais légèrement différentes

1, dans l'opérateur

var obj = {name:'jack'};
alert('name' in obj); // --> true
alert('toString' in obj); // --> true

Vous pouvez voir que qu'il s'agisse de name ou de toString sur la chaîne prototype, on peut détecter qu'il renvoie true.

2. La méthode hasOwnProperty

var obj = {name:'jack'};
obj.hasOwnProperty('name'); // --> true
obj.hasOwnProperty('toString'); // --> false

Les propriétés héritées de la chaîne de prototypes ne peuvent pas être détectées par hasOwnProperty et renvoient false.

Il convient de noter que bien que in puisse détecter les propriétés de la chaîne prototype, in ne le peut généralement pas.

Bien sûr après réécriture du prototype, car in est visible sous IE9/Firefox/Safari/Chrome/Opera. Voir : Défauts de pour dans

Merci d'avoir lu, j'espère que cela pourra aider tout le monde, merci pour votre soutien à ce site !

Pour plus d'articles sur la façon de déterminer si un objet JS possède un certain attribut, veuillez faire attention au site Web PHP 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