Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Ominaisuuksien Käyttäminen Metodeissa | JavaScript-Olioiden Perusteet
Javascriptin tietorakenteet

bookOminaisuuksien Käyttäminen Metodeissa

Syvennytään tarkemmin olioiden metodien käyttöön ja tutkitaan, miten metodit hyödyntävät this-avainsanaa olion ominaisuuksiin pääsemiseksi.

Ominaisuuksiin pääsy metodeissa

Kun määrittelemme metodin olion sisällä, voimme käyttää olion ominaisuuksia this-avainsanan avulla. this viittaa olioon, joka kutsui metodia, mahdollistaen sen ominaisuuksien käsittelyn. Havainnollistetaan tätä esimerkillä:

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: ƒ}

Metodissa getInfo avainsana this viittaa furniture-objektiin ja edustaa koko objektin sisäistä sisältöä.

Käytännön esimerkki

Metodeissa objektin ominaisuuksiin voidaan päästä käsiksi avainsanalla this ja käyttää pisteoperaattoria ominaisuuksien hakemiseen tavanomaisesti.

Alla olevassa esimerkissä metodit getColor, addProperty ja modifyProperty käyttävät this-avainsanaa päästäkseen käsiksi furniture-objektiin ja suorittaakseen erilaisia toimintoja.

  • getColor tulostaa vaatekaapin värin konsoliin käyttämällä this-viittausta objektin ominaisuuksiin;
  • addProperty lisää uusia ominaisuuksia furniture-objektiin. Se ottaa kaksi parametria: propertyName (uuden ominaisuuden nimi) ja propertyValue (uuden ominaisuuden arvo);
  • modifyProperty muuttaa olemassa olevan ominaisuuden arvoa furniture-objektissa. Se ottaa kaksi parametria: propertyName (muutettavan ominaisuuden nimi) ja propertyValue (uusi arvo ominaisuudelle).
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

Huomio

Avainsanan this käyttäminen on olennaista olioiden metodeissa. Se varmistaa, että metodi toimii juuri sen olion kanssa, joka kutsuu sitä, vaikka olion nimeä ei tiedettäisi etukäteen. Tämä ehkäisee mahdollisia ongelmia, kuten metodien kopioimista oliosta toiseen eri nimellä.

1. Mihin this-avainsana viittaa, kun sitä käytetään olion metodissa?

2. Alla olevassa esimerkissä, mikä on getFeastPrice-metodin rooli menu-oliolla?

3. Alla olevassa esimerkissä, miten pääset käsiksi "kylmä alkupala" -ominaisuuteen menu-oliossa käyttäen this-avainsanaa?

question mark

Mihin this-avainsana viittaa, kun sitä käytetään olion metodissa?

Select the correct answer

question mark

Alla olevassa esimerkissä, mikä on getFeastPrice-metodin rooli menu-oliolla?

Select the correct answer

question mark

Alla olevassa esimerkissä, miten pääset käsiksi "kylmä alkupala" -ominaisuuteen menu-oliossa käyttäen this-avainsanaa?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 10

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Awesome!

Completion rate improved to 2.27

bookOminaisuuksien Käyttäminen Metodeissa

Pyyhkäise näyttääksesi valikon

Syvennytään tarkemmin olioiden metodien käyttöön ja tutkitaan, miten metodit hyödyntävät this-avainsanaa olion ominaisuuksiin pääsemiseksi.

Ominaisuuksiin pääsy metodeissa

Kun määrittelemme metodin olion sisällä, voimme käyttää olion ominaisuuksia this-avainsanan avulla. this viittaa olioon, joka kutsui metodia, mahdollistaen sen ominaisuuksien käsittelyn. Havainnollistetaan tätä esimerkillä:

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: ƒ}

Metodissa getInfo avainsana this viittaa furniture-objektiin ja edustaa koko objektin sisäistä sisältöä.

Käytännön esimerkki

Metodeissa objektin ominaisuuksiin voidaan päästä käsiksi avainsanalla this ja käyttää pisteoperaattoria ominaisuuksien hakemiseen tavanomaisesti.

Alla olevassa esimerkissä metodit getColor, addProperty ja modifyProperty käyttävät this-avainsanaa päästäkseen käsiksi furniture-objektiin ja suorittaakseen erilaisia toimintoja.

  • getColor tulostaa vaatekaapin värin konsoliin käyttämällä this-viittausta objektin ominaisuuksiin;
  • addProperty lisää uusia ominaisuuksia furniture-objektiin. Se ottaa kaksi parametria: propertyName (uuden ominaisuuden nimi) ja propertyValue (uuden ominaisuuden arvo);
  • modifyProperty muuttaa olemassa olevan ominaisuuden arvoa furniture-objektissa. Se ottaa kaksi parametria: propertyName (muutettavan ominaisuuden nimi) ja propertyValue (uusi arvo ominaisuudelle).
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

Huomio

Avainsanan this käyttäminen on olennaista olioiden metodeissa. Se varmistaa, että metodi toimii juuri sen olion kanssa, joka kutsuu sitä, vaikka olion nimeä ei tiedettäisi etukäteen. Tämä ehkäisee mahdollisia ongelmia, kuten metodien kopioimista oliosta toiseen eri nimellä.

1. Mihin this-avainsana viittaa, kun sitä käytetään olion metodissa?

2. Alla olevassa esimerkissä, mikä on getFeastPrice-metodin rooli menu-oliolla?

3. Alla olevassa esimerkissä, miten pääset käsiksi "kylmä alkupala" -ominaisuuteen menu-oliossa käyttäen this-avainsanaa?

question mark

Mihin this-avainsana viittaa, kun sitä käytetään olion metodissa?

Select the correct answer

question mark

Alla olevassa esimerkissä, mikä on getFeastPrice-metodin rooli menu-oliolla?

Select the correct answer

question mark

Alla olevassa esimerkissä, miten pääset käsiksi "kylmä alkupala" -ominaisuuteen menu-oliossa käyttäen this-avainsanaa?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 10
some-alt