Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Bruk av Egenskaper i Metoder | Grunnleggende om JavaScript-Objekter
Javascript Datastrukturer

bookBruk av Egenskaper i Metoder

La oss se nærmere på bruken av objektmetoder og utforske hvordan metoder bruker this-nøkkelordet for å få tilgang til objektets egenskaper.

Tilgang til objektegenskaper i metoder

Når vi definerer en metode i et objekt, kan vi få tilgang til objektets egenskaper ved å bruke nøkkelordet this. this refererer til objektet som kaller metoden, og gjør det mulig å samhandle med dets egenskaper. La oss illustrere dette konseptet 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 metoden getInfo refererer this til furniture-objektet og representerer hele objektets indre innhold.

Praktisk eksempel

I metoder kan man få tilgang til objektets egenskaper gjennom this og deretter bruke punktnotasjon for å hente spesifikke egenskaper som vanlig.

I eksempelet under bruker metodene getColor, addProperty og modifyProperty this for å få tilgang til egenskapene i furniture og utføre ulike operasjoner.

  • getColor logger garderobens farge til konsollen ved å bruke this for å referere til objektets egenskaper;
  • addProperty legger til nye egenskaper i furniture-objektet. Den tar to parametere: propertyName (navnet på den nye egenskapen) og propertyValue (verdien som skal tildeles den nye egenskapen);
  • modifyProperty endrer verdien til en eksisterende egenskap i furniture-objektet. Den tar to parametere: propertyName (navnet på egenskapen som skal endres) og propertyValue (den nye verdien som skal tildeles egenskapen).
12345678910111213141516171819202122232425262728
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
copy

Merk

Bruk av nøkkelordet this er avgjørende i objektmetoder. Det sikrer at metoden arbeider med det spesifikke objektet som kaller den, selv om navnet er ukjent på forhånd. Dette unngår potensielle problemer, som for eksempel å kopiere metoder fra ett objekt til et annet med et annet navn.

1. Hva refererer nøkkelordet this til når det brukes i en metode til et objekt?

2. I eksempelet nedenfor, hva er rollen til metoden getFeastPrice i objektet menu?

3. I eksempelet nedenfor, hvordan får du tilgang til egenskapen "cold appetizer" i objektet menu ved å bruke this?

question mark

Hva refererer nøkkelordet this til når det brukes i en metode til et objekt?

Select the correct answer

question mark

I eksempelet nedenfor, hva er rollen til metoden getFeastPrice i objektet menu?

Select the correct answer

question mark

I eksempelet nedenfor, hvordan får du tilgang til egenskapen "cold appetizer" i objektet menu ved å bruke this?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 10

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

Can you explain more about how the `this` keyword works in different contexts?

What happens if I call a method without using the object (e.g., assign it to a variable and call it)?

Can you show an example of copying a method to another object and how `this` behaves?

Awesome!

Completion rate improved to 2.27

bookBruk av Egenskaper i Metoder

Sveip for å vise menyen

La oss se nærmere på bruken av objektmetoder og utforske hvordan metoder bruker this-nøkkelordet for å få tilgang til objektets egenskaper.

Tilgang til objektegenskaper i metoder

Når vi definerer en metode i et objekt, kan vi få tilgang til objektets egenskaper ved å bruke nøkkelordet this. this refererer til objektet som kaller metoden, og gjør det mulig å samhandle med dets egenskaper. La oss illustrere dette konseptet 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 metoden getInfo refererer this til furniture-objektet og representerer hele objektets indre innhold.

Praktisk eksempel

I metoder kan man få tilgang til objektets egenskaper gjennom this og deretter bruke punktnotasjon for å hente spesifikke egenskaper som vanlig.

I eksempelet under bruker metodene getColor, addProperty og modifyProperty this for å få tilgang til egenskapene i furniture og utføre ulike operasjoner.

  • getColor logger garderobens farge til konsollen ved å bruke this for å referere til objektets egenskaper;
  • addProperty legger til nye egenskaper i furniture-objektet. Den tar to parametere: propertyName (navnet på den nye egenskapen) og propertyValue (verdien som skal tildeles den nye egenskapen);
  • modifyProperty endrer verdien til en eksisterende egenskap i furniture-objektet. Den tar to parametere: propertyName (navnet på egenskapen som skal endres) og propertyValue (den nye verdien som skal tildeles egenskapen).
12345678910111213141516171819202122232425262728
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
copy

Merk

Bruk av nøkkelordet this er avgjørende i objektmetoder. Det sikrer at metoden arbeider med det spesifikke objektet som kaller den, selv om navnet er ukjent på forhånd. Dette unngår potensielle problemer, som for eksempel å kopiere metoder fra ett objekt til et annet med et annet navn.

1. Hva refererer nøkkelordet this til når det brukes i en metode til et objekt?

2. I eksempelet nedenfor, hva er rollen til metoden getFeastPrice i objektet menu?

3. I eksempelet nedenfor, hvordan får du tilgang til egenskapen "cold appetizer" i objektet menu ved å bruke this?

question mark

Hva refererer nøkkelordet this til når det brukes i en metode til et objekt?

Select the correct answer

question mark

I eksempelet nedenfor, hva er rollen til metoden getFeastPrice i objektet menu?

Select the correct answer

question mark

I eksempelet nedenfor, hvordan får du tilgang til egenskapen "cold appetizer" i objektet menu ved å bruke this?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 10
some-alt