Heim  >  Artikel  >  Web-Frontend  >  So ermitteln Sie, ob ein JS-Objekt ein bestimmtes Attribut hat

So ermitteln Sie, ob ein JS-Objekt ein bestimmtes Attribut hat

高洛峰
高洛峰Original
2017-02-08 17:29:001032Durchsuche

Ob ein JS-Objekt ein bestimmtes Attribut hat

Zwei Möglichkeiten, aber etwas unterschiedlich

1, im Operator

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

Sie können sehen, dass unabhängig davon, ob es sich um name oder toString in der Prototypenkette handelt, erkannt werden kann, dass true zurückgegeben wird.

2. Die hasOwnProperty-Methode

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

Die von der Prototypenkette geerbten Eigenschaften können von hasOwnProperty nicht erkannt werden und geben „false“ zurück.

Es ist zu beachten, dass in zwar die Eigenschaften der Prototypenkette erkennen kann, in der Regel jedoch nicht möglich ist.

Natürlich nach dem Umschreiben des Prototyps, denn in ist unter IE9/Firefox/Safari/Chrome/Opera sichtbar. Siehe: Mängel von for in

Vielen Dank fürs Lesen, ich hoffe, es kann allen helfen, vielen Dank für Ihre Unterstützung dieser Website!

Weitere verwandte Artikel zum Ermitteln, ob ein JS-Objekt ein bestimmtes Attribut hat, finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn