Überblick
Die Methode von HasownProperty () wird verwendet, um festzustellen, ob ein Objekt eine angegebene Eigenschaft enthält.
Grammatik
Obj.hasownProperty (Prop)
Parameter
•Stütze
• Der Name des zu erkennenden Attributs.
beschreiben
Alle Objekte, die Objekt erben. Diese Methode kann verwendet werden, um festzustellen, ob ein Objekt eine bestimmte Eigenschaft enthält. Im Gegensatz zum Operator ignoriert diese Methode die von der Prototypkette geerbten Eigenschaften.
Beispiel
Beispiel 1: Verwenden Sie die Methode für HasownProperty, um festzustellen, ob ein Objekt eine bestimmte Eigenschaft enthält
Das folgende Beispiel erkennt, ob das Objekt O ein eigenes Attribut -Requisit enthält:
Die Codekopie lautet wie folgt:
o = new Object (); O.Prop = 'existiert'; Funktion wechseln () {
O.NewProp = O.Prop;
lösche o.Prop;} o.hasownProperty ('prop');
// true zurückgeben
wildeo ();
O.hasownProperty ('Prop');
// false zurückgeben
Beispiel 2: Der Unterschied zwischen Ihren eigenen Attributen und den ererbten Attributen
Das folgende Beispiel zeigt den Unterschied zwischen der HasownProperty -Methode behandelt seine eigenen Eigenschaften und ererbten Eigenschaften:
Die Codekopie lautet wie folgt:
o = neues Objekt (); O.Prop = 'existiert'; o.hasownProperty ('prop');
// true zurückgeben
o.hasownProperty ('tostring');
// false zurückgeben
O.hasownProperty ('HasownProperty');
// false zurückgeben
Beispiel 3: Durch alle Eigenschaften eines Objekts iterieren
Das folgende Beispiel zeigt, wie er ererbte Eigenschaften ignoriert, wenn alle Eigenschaften eines Objekts durchquert werden. Beachten Sie, dass die für die ... in der Schleife nur die aufzähligen Eigenschaften durchquert, was normalerweise das ist, was wir wollen. Es kann auch ähnliche Anforderungen mit der Methode von Object.getownPropertynames () direkt erfüllen.
Die Codekopie lautet wie folgt:
var buz = {
Nebel: 'Stack'};
für (var name in buz) {
if (buz.hasownProperty (Name)) {
alert ("Dies ist Nebel (" + name + ") sicher. Wert:" + buz [Name]);
}
anders {
alarm (Name);
// tostring oder etwas anderes
}}
Beispiel 4: Die HasownProperty -Methode kann blockiert werden
Wenn ein Objekt eine eigene HasownProperty -Methode hat, wird die gleichnamige Methode in der Prototyp -Kette beschattet:
Die Codekopie lautet wie folgt:
var foo = {
HasownProperty: function () {
false zurückgeben;
},
Bar: 'Hier Be Dragons'}; foo.hasownProperty ('Bar');
// immer falsch zurückgeben
// Wenn Sie sich darüber Sorgen machen, können Sie die echte HasownProperty -Methode in der Prototyp -Kette direkt verwenden
({}). hasownProperty.call (foo, 'bar');
// WAHR
Object.Prototype.hasownProperty.call (foo, 'bar');
// WAHR
Das obige Inhalt ist der in diesem Artikel beschriebene Inhalt. Ich hoffe, es gefällt Ihnen.