Kursinhalt
JavaScript-Datenstrukturen
JavaScript-Datenstrukturen
Eigenschaften in Methoden
Lassen Sie uns tiefer in die Verwendung von Objektmethoden eintauchen und erkunden, wie Methoden das Schlüsselwort this
verwenden, um auf Objekteigenschaften zuzugreifen.
Zugriff auf Objekteigenschaften in Methoden
Wenn wir eine Methode innerhalb eines Objekts definieren, können wir auf die Eigenschaften des Objekts mit dem Schlüsselwort this
zugreifen. this
bezieht sich auf das Objekt, das die Methode aufgerufen hat, und ermöglicht uns, mit seinen Eigenschaften zu interagieren. Lassen Sie uns dieses Konzept mit einem Beispiel veranschaulichen:
In der getInfo
-Methode bezieht sich this
auf das furniture
-Objekt und repräsentiert den gesamten inneren Inhalt des Objekts.
Praktisches Beispiel
In Methoden können wir auf Objekteigenschaften über this
zugreifen und dann wie gewohnt die Punktnotation verwenden, um auf die spezifischen Eigenschaften zuzugreifen.
Im folgenden Beispiel verwenden die Methoden getColor
, addProperty
und modifyProperty
this
, um auf die furniture
-Eigenschaft zuzugreifen und verschiedene Operationen durchzuführen.
getColor
protokolliert die Farbe des Schranks in der Konsole, indemthis
verwendet wird, um auf die Eigenschaften des Objekts zu verweisen;addProperty
fügt dem Möbelobjekt neue Eigenschaften hinzu. Es nimmt zwei Parameter:propertyName
(der Name der neuen Eigenschaft) undpropertyValue
(der Wert, der der neuen Eigenschaft zugewiesen werden soll);modifyProperty
ändert den Wert einer vorhandenen Eigenschaft imfurniture
-Objekt. Es nimmt zwei Parameter:propertyName
(der zu ändernde Eigenschaftsname) undpropertyValue
(der neue Wert, der der Eigenschaft zugewiesen werden soll).
const furniture = { type: "wardrobe", manufacturer: "Belgium", color: "wenge magic", getColor() { console.log(this.color); }, addProperty(propertyName, propertyValue) { this[propertyName] = propertyValue; }, modifyProperty(propertyName, propertyValue) { this[propertyName] = propertyValue; }, }; // Access the `color` property of the `furniture` and log it to the console. furniture.getColor(); // Output: wenge magic // Add a new property to the `furniture` object using the `addProperty` method. furniture.addProperty("material", "wood"); console.log(furniture.material); // Output: wood // Modify an existing property using the `modifyProperty` method. furniture.modifyProperty("color", "oak"); console.log(furniture.color); // Output: oak
Hinweis
Die Verwendung des
this
-Schlüsselworts ist in Objektmethoden unerlässlich. Es stellt sicher, dass die Methode mit dem spezifischen Objekt funktioniert, das sie aufgerufen hat, selbst wenn der Name im Voraus unbekannt ist. Dies vermeidet potenzielle Probleme, wie das Kopieren von Methoden von einem Objekt zu einem anderen mit einem anderen Namen.
1. Worauf bezieht sich das Schlüsselwort this
, wenn es innerhalb einer Methode eines Objekts verwendet wird?
2. In dem unten bereitgestellten Beispiel, welche Rolle spielt die Methode getFeastPrice
im menu
-Objekt?
3. In dem unten bereitgestellten Beispiel, wie greift man mit menu
auf die Eigenschaft "kalte Vorspeise" des this
-Objekts zu?
Danke für Ihr Feedback!