Об'єкт this

Ключове слово this вказує на "власника" функції чи об'єкта. Вважайте, що в змінній this зберігається "батько" функції. Цю змінну створювати не треба, вона створюється та ініціалізується автоматично при кожному виклику будь-якої функції.

Власне, всі функції є методами глобального об'єкта window, з яким ми познайомимося трохи пізніше.

Щоб в цьому переконатися - створіть функцію та виведіть в консоль ключове слово this:

function test(){
  console.log(this);
}

Виведіть в консоль інформацію про гарбуз:

let pumpkin = {
  color: 'green',
  weight: '34 kg',
  text: function(){
    console.log(this);
    console.log('Color:', this.color);
    console.log('Weight:', this.weight);
  }
}
pumpkin.text();

Завдання.

Створіть три об'єкта: яблуко, автомобіль та гудзик. Кожному задайте назву і колір та створіть метод, що виводить в консоль інформацію про поточний об'єкт:

apple - green

Створіть метод setColor, який запитує у користувача (prompt) колір об'єкта і встановлює цей колір.

Після змін кольорів знову викличте методи, що виводять в консоль інформацію про об'єкти.