Використання Властивостей у Методах
Давайте детальніше розглянемо використання методів об'єкта та дослідимо, як методи використовують ключове слово this для доступу до властивостей об'єкта.
Доступ до властивостей об'єкта в методах
Усередині методу this дозволяє читати або змінювати властивості об'єкта.
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: ƒ}
У методі getInfo ключове слово this посилається на об'єкт furniture і представляє весь внутрішній вміст цього об'єкта.
Практичний приклад
У методах можна отримувати доступ до властивостей об'єкта через this, а потім використовувати крапкову нотацію для доступу до конкретних властивостей, як зазвичай.
У наведеному нижче прикладі методи getColor, addProperty та modifyProperty використовують this для доступу до властивостей об'єкта furniture та виконують різні операції.
getColorвиводить колір шафи у консоль, використовуючиthisдля звернення до властивостей об'єкта;addPropertyдодає нові властивості до об'єкта furniture. Приймає два параметри:propertyName(назва нової властивості) таpropertyValue(значення, яке буде присвоєно новій властивості);modifyPropertyзмінює значення існуючої властивості в об'єктіfurniture. Приймає два параметри:propertyName(назва властивості для зміни) таpropertyValue(нове значення для властивості).
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 гарантує, що метод завжди посилається на правильний об'єкт, навіть якщо метод повторно використовується або копіюється в інше місце.
1. На що посилається ключове слово this, коли використовується всередині методу об'єкта?
2. Яка роль методу getFeastPrice у об'єкті menu у наведеному нижче прикладі?
3. У наведеному нижче прикладі, як отримати доступ до властивості "cold appetizer" об'єкта menu за допомогою this?
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you explain how the `this` keyword works in different contexts?
What happens if I call one of these methods from outside the object?
Can you show more examples of using `this` in object methods?
Чудово!
Completion показник покращився до 2.27
Використання Властивостей у Методах
Свайпніть щоб показати меню
Давайте детальніше розглянемо використання методів об'єкта та дослідимо, як методи використовують ключове слово this для доступу до властивостей об'єкта.
Доступ до властивостей об'єкта в методах
Усередині методу this дозволяє читати або змінювати властивості об'єкта.
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: ƒ}
У методі getInfo ключове слово this посилається на об'єкт furniture і представляє весь внутрішній вміст цього об'єкта.
Практичний приклад
У методах можна отримувати доступ до властивостей об'єкта через this, а потім використовувати крапкову нотацію для доступу до конкретних властивостей, як зазвичай.
У наведеному нижче прикладі методи getColor, addProperty та modifyProperty використовують this для доступу до властивостей об'єкта furniture та виконують різні операції.
getColorвиводить колір шафи у консоль, використовуючиthisдля звернення до властивостей об'єкта;addPropertyдодає нові властивості до об'єкта furniture. Приймає два параметри:propertyName(назва нової властивості) таpropertyValue(значення, яке буде присвоєно новій властивості);modifyPropertyзмінює значення існуючої властивості в об'єктіfurniture. Приймає два параметри:propertyName(назва властивості для зміни) таpropertyValue(нове значення для властивості).
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 гарантує, що метод завжди посилається на правильний об'єкт, навіть якщо метод повторно використовується або копіюється в інше місце.
1. На що посилається ключове слово this, коли використовується всередині методу об'єкта?
2. Яка роль методу getFeastPrice у об'єкті menu у наведеному нижче прикладі?
3. У наведеному нижче прикладі, як отримати доступ до властивості "cold appetizer" об'єкта menu за допомогою this?
Дякуємо за ваш відгук!