Kursinhalt
JavaScript-Datenstrukturen
JavaScript-Datenstrukturen
Methode hasOwnProperty()
Beim Durchlaufen der Eigenschaften eines Objekts mit der for...in
Schleife ist es wichtig, zwischen den eigenen Eigenschaften des Objekts und denen, die von seiner Prototypenkette geerbt wurden, zu unterscheiden.
Die Methode hasOwnProperty()
ist ein wertvolles Werkzeug, um zu überprüfen, ob eine Eigenschaft zum Objekt gehört oder von einem Prototyp geerbt wurde. Lassen Sie uns die Methode hasOwnProperty()
erkunden und wie sie Objekteigenschaften während der Iteration sicher handhaben kann.
Verständnis von hasOwnProperty()
Die Methode hasOwnProperty()
ist eine eingebaute JavaScript-Methode, die es uns ermöglicht zu überprüfen, ob eine bestimmte Eigenschaft direkt auf einem Objekt existiert. Sie gibt einen booleschen Wert (true
oder false
) zurück, der angibt, ob das Objekt eine Eigenschaft mit dem angegebenen Namen hat.
Hier ist die grundlegende Syntax der Methode hasOwnProperty()
:
object
: Das Objekt, das Sie überprüfen möchten;property
: Der Name der Eigenschaft, die wir überprüfen möchten.
Verwendung von hasOwnProperty() mit for...in
Mit der for...in
Schleife können wir sie mit der hasOwnProperty()
Methode kombinieren, um durch die Eigenschaften eines Objekts zu iterieren. Es ist wichtig, bei jeder Iteration eine Überprüfung auf eigene Eigenschaften hinzuzufügen, um sicherzustellen, dass wir nur auf die eigenen Eigenschaften des Objekts zugreifen. Selbst wenn wir sicher sind, dass das Objekt keine geerbten Eigenschaften hat, schützt diese Überprüfung vor möglichen zukünftigen Fehlern.
const exercise = { name: "Deadlift", primaryMusclesWorked: "Erector spinae", equipment: "Barbell", exerciseType: "Strength", difficulty: "Intermediate", }; for (let key in exercise) { if (exercise.hasOwnProperty(key)) { console.log(`Property: ${key}, Value: ${exercise[key]}`); } }
1. Was ist der Hauptzweck der hasOwnProperty()
Methode?
2. Welchen Wertetyp gibt die Methode hasOwnProperty()
zurück?
3. Warum ist es wichtig, bei der Verwendung von hasOwnProperty()
mit der for...in
Schleife auf eigene Eigenschaften zu prüfen?
4. Was wird im folgenden Code protokolliert, wenn durch die Eigenschaften des video
Objekts iteriert wird?
Danke für Ihr Feedback!