• Теория
  • Теория

Не будем вырывать из контекста

Наша программа готова! Вся необходимая функциональность написана! Осталось обсудить ещё один вопрос.

Внутри методов мы обращаемся к свойствам объекта компьютера computer.свойство. А что, если в будущем название объекта изменится и количество свойств увеличится? Придётся везде исправлять computer на что-то новое. Лень — одно из главных качеств разработчика, переписывать названия совсем не хочется. Хорошо, что есть ключевое слово this. Им-то мы и воспользуемся.

this недаром называется именно так. Если в речи такое местоимение указывает на определённый предмет, то в JavaScript ключевое слово this указывает на конкретный объект, а именно на тот объект, на котором была вызвана функция (метод).

Использовать this просто, достаточно заменить название объекта на ключевое слово в обращении к свойству. Вместо объект.свойство используем this.свойство.

let cat = {
  name: 'Рудольф',

  introduce: function () {
    console.log('Мяу! Я кот ' + this.name + '!');
  }
};

cat.introduce(); // Выведет: Мяу! Я кот Рудольф!

Объект, на который указывает this называется контекстом вызова.

Важная деталь: пока функция не вызвана, this не содержит никакого значения, контекст появляется только в момент вызова функции.

Ключевое слово this приносит много пользы разработчикам. О других преимуществах и особенностях this вы узнаете позже, в дальнейших тренажёрах, а пока заменим обращение к свойствам внутри объекта computer.

Минимальный вид табов
  • index.html
HTML
HTML

Вы перешли на другую страницу

Кликните внутри мини-браузера, чтобы поставить фокус в это окно.

100%
Бабушка Кекс

Притормози, дружище

Проходить вызовы части «Объекты» тренажёра «Базовые структуры данных» можно после регистрации и оформления подписки.