Brug Af Egenskaber Inden For Metoder
Lad os dykke dybere ned i brugen af objektmetoder og udforske, hvordan metoder anvender this-nøgleordet til at få adgang til objektets egenskaber.
Adgang til objektets egenskaber i metoder
Når en metode defineres i et objekt, kan objektets egenskaber tilgås ved hjælp af this-nøgleordet. this refererer til objektet, der kaldte metoden, hvilket muliggør interaktion med dets egenskaber. Dette koncept illustreres med et eksempel:
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 getInfo-metoden refererer this til furniture-objektet og repræsenterer hele objektets indhold.
Praktisk eksempel
I metoder kan objektets egenskaber tilgås via this, hvorefter punktnotation anvendes til at tilgå de specifikke egenskaber som normalt.
I eksemplet nedenfor anvender metoderne getColor, addProperty og modifyProperty this til at tilgå egenskaberne i furniture og udføre forskellige operationer.
getColorlogger garderobens farve til konsollen ved at brugethistil at referere til objektets egenskaber;addPropertytilføjer nye egenskaber til furniture-objektet. Den tager to parametre:propertyName(navnet på den nye egenskab) ogpropertyValue(værdien, der skal tildeles den nye egenskab);modifyPropertyændrer værdien af en eksisterende egenskab ifurniture-objektet. Den tager to parametre:propertyName(navnet på den egenskab, der skal ændres) ogpropertyValue(den nye værdi, der skal tildeles egenskaben).
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
Bemærk
Brug af nøgleordet
thiser afgørende i objektmetoder. Det sikrer, at metoden arbejder med det specifikke objekt, der kalder den, selv hvis navnet ikke er kendt på forhånd. Dette undgår potentielle problemer, såsom at kopiere metoder fra ét objekt til et andet med et andet navn.
1. Hvad refererer nøgleordet this til, når det bruges i en metode på et objekt?
2. I det følgende eksempel, hvad er rollen for metoden getFeastPrice i objektet menu?
3. I det følgende eksempel, hvordan tilgår du egenskaben "cold appetizer" i objektet menu ved brug af this?
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 2.27
Brug Af Egenskaber Inden For Metoder
Stryg for at vise menuen
Lad os dykke dybere ned i brugen af objektmetoder og udforske, hvordan metoder anvender this-nøgleordet til at få adgang til objektets egenskaber.
Adgang til objektets egenskaber i metoder
Når en metode defineres i et objekt, kan objektets egenskaber tilgås ved hjælp af this-nøgleordet. this refererer til objektet, der kaldte metoden, hvilket muliggør interaktion med dets egenskaber. Dette koncept illustreres med et eksempel:
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 getInfo-metoden refererer this til furniture-objektet og repræsenterer hele objektets indhold.
Praktisk eksempel
I metoder kan objektets egenskaber tilgås via this, hvorefter punktnotation anvendes til at tilgå de specifikke egenskaber som normalt.
I eksemplet nedenfor anvender metoderne getColor, addProperty og modifyProperty this til at tilgå egenskaberne i furniture og udføre forskellige operationer.
getColorlogger garderobens farve til konsollen ved at brugethistil at referere til objektets egenskaber;addPropertytilføjer nye egenskaber til furniture-objektet. Den tager to parametre:propertyName(navnet på den nye egenskab) ogpropertyValue(værdien, der skal tildeles den nye egenskab);modifyPropertyændrer værdien af en eksisterende egenskab ifurniture-objektet. Den tager to parametre:propertyName(navnet på den egenskab, der skal ændres) ogpropertyValue(den nye værdi, der skal tildeles egenskaben).
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
Bemærk
Brug af nøgleordet
thiser afgørende i objektmetoder. Det sikrer, at metoden arbejder med det specifikke objekt, der kalder den, selv hvis navnet ikke er kendt på forhånd. Dette undgår potentielle problemer, såsom at kopiere metoder fra ét objekt til et andet med et andet navn.
1. Hvad refererer nøgleordet this til, når det bruges i en metode på et objekt?
2. I det følgende eksempel, hvad er rollen for metoden getFeastPrice i objektet menu?
3. I det følgende eksempel, hvordan tilgår du egenskaben "cold appetizer" i objektet menu ved brug af this?
Tak for dine kommentarer!