Прескочи към основното съдържание Прескочи към навигацията
Допълнения към урока
Учебна програма Основи на програмирането с JavaScript
6. Events, scope, context

Пълен достъп до курса: Не

За пълен достъп или безплатна проба (2 модула), моля влезте или се регистрирайте.


Контекстът на изпълнение определя стойността на this

Контекстът на изпълнение показва към кой обект сочи this в даден момент. При обикновено извикване на функция, this по подразбиране сочи към window. Когато обаче функцията е закачена като event listener, this сочи към елемента, който е предизвикал събитието. Най-важното: стойността на this зависи от начина на извикване на функцията, а не от мястото, където е дефинирана.

Демонстрация: как се променя this

  1. Декларирайте функция (например unload) и в нея изпишете console.log(this).
  2. Извикайте я директно – ще получите window като контекст.
  3. Закачете същата функция с addEventListener към бутон или линк.
  4. При клик ще видите, че this вече сочи към самия HTML елемент.
  5. Използвайте bind, за да фиксирате this към конкретен обект (например window).
  6. Използвайте call, ако искате да зададете контекста ръчно при извикване.

Основни методи и функции

  • this – референция към текущия контекст на изпълнение.
  • addEventListener – закача функция към събитие; променя контекста към елемента.
  • bind – връща нова функция със зададен фиксиран this.
  • call – извиква функцията веднага със зададен this.
  • console.log – извежда стойности в конзолата за проверка.

Дискусия към урока