Använda Egenskaper Inom Metoder
Låt oss fördjupa oss i användningen av objektmetoder och utforska hur metoder använder nyckelordet this för att komma åt objektets egenskaper.
Åtkomst till objektets egenskaper i metoder
Inuti en metod gör this det möjligt att läsa eller uppdatera objektets egenskaper.
const furniture = {
type: "wardrobe",
manufacturer: "Belgium",
color: "wenge magic",
getInfo() {
console.log(this);
},
};
// Method call
furniture.getInfo(); // Output: {type: 'wardrobe', manufacturer: 'Belgium', color: 'wenge magic', getInfo: ƒ}
I metoden getInfo syftar this på objektet furniture och representerar hela objektets interna innehåll.
Praktiskt exempel
I metoder kan objektets egenskaper nås via this och sedan användas med punktnotation som vanligt.
I exemplet nedan använder metoderna getColor, addProperty och modifyProperty this för att komma åt egenskapen furniture och utföra olika operationer.
getColorloggar garderobens färg till konsolen genom att användathisför att referera till objektets egenskaper;addPropertylägger till nya egenskaper i furniture-objektet. Den tar två parametrar:propertyName(namnet på den nya egenskapen) ochpropertyValue(värdet som ska tilldelas den nya egenskapen);modifyPropertyändrar värdet på en befintlig egenskap ifurniture-objektet. Den tar två parametrar:propertyName(namnet på egenskapen som ska ändras) ochpropertyValue(det nya värdet som ska tilldelas egenskapen).
12345678910111213141516171819202122232425262728const 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
this säkerställer att metoden alltid hänvisar till rätt objekt, även om metoden återanvänds eller kopieras någon annanstans.
1. Vad syftar nyckelordet this på när det används inom en metod i ett objekt?
2. I det angivna exemplet nedan, vilken roll har metoden getFeastPrice i objektet menu?
3. I det givna exemplet nedan, hur får du åtkomst till egenskapen "cold appetizer" i objektet menu med hjälp av this?
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Fantastiskt!
Completion betyg förbättrat till 2.27
Använda Egenskaper Inom Metoder
Svep för att visa menyn
Låt oss fördjupa oss i användningen av objektmetoder och utforska hur metoder använder nyckelordet this för att komma åt objektets egenskaper.
Åtkomst till objektets egenskaper i metoder
Inuti en metod gör this det möjligt att läsa eller uppdatera objektets egenskaper.
const furniture = {
type: "wardrobe",
manufacturer: "Belgium",
color: "wenge magic",
getInfo() {
console.log(this);
},
};
// Method call
furniture.getInfo(); // Output: {type: 'wardrobe', manufacturer: 'Belgium', color: 'wenge magic', getInfo: ƒ}
I metoden getInfo syftar this på objektet furniture och representerar hela objektets interna innehåll.
Praktiskt exempel
I metoder kan objektets egenskaper nås via this och sedan användas med punktnotation som vanligt.
I exemplet nedan använder metoderna getColor, addProperty och modifyProperty this för att komma åt egenskapen furniture och utföra olika operationer.
getColorloggar garderobens färg till konsolen genom att användathisför att referera till objektets egenskaper;addPropertylägger till nya egenskaper i furniture-objektet. Den tar två parametrar:propertyName(namnet på den nya egenskapen) ochpropertyValue(värdet som ska tilldelas den nya egenskapen);modifyPropertyändrar värdet på en befintlig egenskap ifurniture-objektet. Den tar två parametrar:propertyName(namnet på egenskapen som ska ändras) ochpropertyValue(det nya värdet som ska tilldelas egenskapen).
12345678910111213141516171819202122232425262728const 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
this säkerställer att metoden alltid hänvisar till rätt objekt, även om metoden återanvänds eller kopieras någon annanstans.
1. Vad syftar nyckelordet this på när det används inom en metod i ett objekt?
2. I det angivna exemplet nedan, vilken roll har metoden getFeastPrice i objektet menu?
3. I det givna exemplet nedan, hur får du åtkomst till egenskapen "cold appetizer" i objektet menu med hjälp av this?
Tack för dina kommentarer!