Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Utilizzo delle Proprietà all'Interno dei Metodi | Fondamenti degli Oggetti JavaScript
Strutture Dati JavaScript

bookUtilizzo delle Proprietà all'Interno dei Metodi

Approfondiamo l'utilizzo dei metodi degli oggetti ed esploriamo come i metodi utilizzano la parola chiave this per accedere alle proprietà dell'oggetto.

Accesso alle proprietà dell'oggetto nei metodi

Quando definiamo un metodo all'interno di un oggetto, possiamo accedere alle proprietà dell'oggetto utilizzando la parola chiave this. this si riferisce all'oggetto che ha chiamato il metodo, permettendoci di interagire con le sue proprietà. Illustriamo questo concetto con un esempio:

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

Nel metodo getInfo, this si riferisce all'oggetto furniture e rappresenta l'intero contenuto interno dell'oggetto.

Esempio pratico

Nei metodi, è possibile accedere alle proprietà dell'oggetto tramite this e poi utilizzare la notazione a punto per accedere alle proprietà specifiche come di consueto.

Nell'esempio seguente, i metodi getColor, addProperty e modifyProperty utilizzano this per accedere alla proprietà furniture ed eseguire varie operazioni.

  • getColor stampa il colore dell'armadio nella console utilizzando this per riferirsi alle proprietà dell'oggetto;
  • addProperty aggiunge nuove proprietà all'oggetto furniture. Accetta due parametri: propertyName (il nome della nuova proprietà) e propertyValue (il valore da assegnare alla nuova proprietà);
  • modifyProperty modifica il valore di una proprietà esistente nell'oggetto furniture. Accetta due parametri: propertyName (il nome della proprietà da modificare) e propertyValue (il nuovo valore da assegnare alla proprietà).
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

Nota

L'utilizzo della parola chiave this è essenziale nei metodi degli oggetti. Garantisce che il metodo lavori con lo specifico oggetto che lo richiama, anche se il nome non è noto in anticipo. Questo evita potenziali problemi, come la copia di metodi da un oggetto a un altro con un nome diverso.

1. A cosa si riferisce la parola chiave this quando viene utilizzata all'interno di un metodo di un oggetto?

2. Nell'esempio fornito di seguito, qual è il ruolo del metodo getFeastPrice nell'oggetto menu?

3. Nell'esempio fornito di seguito, come si accede alla proprietà "cold appetizer" dell'oggetto menu utilizzando this?

question mark

A cosa si riferisce la parola chiave this quando viene utilizzata all'interno di un metodo di un oggetto?

Select the correct answer

question mark

Nell'esempio fornito di seguito, qual è il ruolo del metodo getFeastPrice nell'oggetto menu?

Select the correct answer

question mark

Nell'esempio fornito di seguito, come si accede alla proprietà "cold appetizer" dell'oggetto menu utilizzando this?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 10

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

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

bookUtilizzo delle Proprietà all'Interno dei Metodi

Scorri per mostrare il menu

Approfondiamo l'utilizzo dei metodi degli oggetti ed esploriamo come i metodi utilizzano la parola chiave this per accedere alle proprietà dell'oggetto.

Accesso alle proprietà dell'oggetto nei metodi

Quando definiamo un metodo all'interno di un oggetto, possiamo accedere alle proprietà dell'oggetto utilizzando la parola chiave this. this si riferisce all'oggetto che ha chiamato il metodo, permettendoci di interagire con le sue proprietà. Illustriamo questo concetto con un esempio:

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

Nel metodo getInfo, this si riferisce all'oggetto furniture e rappresenta l'intero contenuto interno dell'oggetto.

Esempio pratico

Nei metodi, è possibile accedere alle proprietà dell'oggetto tramite this e poi utilizzare la notazione a punto per accedere alle proprietà specifiche come di consueto.

Nell'esempio seguente, i metodi getColor, addProperty e modifyProperty utilizzano this per accedere alla proprietà furniture ed eseguire varie operazioni.

  • getColor stampa il colore dell'armadio nella console utilizzando this per riferirsi alle proprietà dell'oggetto;
  • addProperty aggiunge nuove proprietà all'oggetto furniture. Accetta due parametri: propertyName (il nome della nuova proprietà) e propertyValue (il valore da assegnare alla nuova proprietà);
  • modifyProperty modifica il valore di una proprietà esistente nell'oggetto furniture. Accetta due parametri: propertyName (il nome della proprietà da modificare) e propertyValue (il nuovo valore da assegnare alla proprietà).
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

Nota

L'utilizzo della parola chiave this è essenziale nei metodi degli oggetti. Garantisce che il metodo lavori con lo specifico oggetto che lo richiama, anche se il nome non è noto in anticipo. Questo evita potenziali problemi, come la copia di metodi da un oggetto a un altro con un nome diverso.

1. A cosa si riferisce la parola chiave this quando viene utilizzata all'interno di un metodo di un oggetto?

2. Nell'esempio fornito di seguito, qual è il ruolo del metodo getFeastPrice nell'oggetto menu?

3. Nell'esempio fornito di seguito, come si accede alla proprietà "cold appetizer" dell'oggetto menu utilizzando this?

question mark

A cosa si riferisce la parola chiave this quando viene utilizzata all'interno di un metodo di un oggetto?

Select the correct answer

question mark

Nell'esempio fornito di seguito, qual è il ruolo del metodo getFeastPrice nell'oggetto menu?

Select the correct answer

question mark

Nell'esempio fornito di seguito, come si accede alla proprietà "cold appetizer" dell'oggetto menu utilizzando this?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 10
some-alt