Ключевое слово this. Методы bind, call, apply




Вводная информация



this и объекты



this и ф-ции



this и события DOM




Выводы по главе


1. Обычно this указывает на об-т, в области видимости которого находится

2. На, что указывает this в ф-ции зависит от того, в строгом или не строгом режиме ф-ция вызывается

3. this в ф-ции можно переопределить с помощью методов bind, call, apply. В ф-ции вызываемой через ключевое слово new (ф-ция - конструктор), this всегда указывает на об-т этой ф-ции

4. this в стрелочных ф-циях указывает на об-т роительской области видимости (если у него есть свой контекст). Привязать this к стрелочной ф-ции нельзя

5. В событиях DOM, this указывает на об-т элемента, на который установлено событие (если в качестве коллбека используется классическая, а не стрелочная ф-ция)


Упражнения


1. Создать об-т с полями firstName и lastName. Создать метод getFullName, который будет возвращать полное имя (firstName + lastName)

2. Сделать то же самое используя ф-цию конструктор

3. Посмотреть и вывести в консоль на что указывает this в обычной ф-ции (строгий режим), обычной ф-ции (не строгий режим), стрелочной ф-ции

4. Создать ф-цию, которая будет суммировать переданные в неё 3 числа. Ф-цию вызвать через call

5. Существует полученный с сервера об-т obj с полями a = 10, b = 20. Создать ф-цию, которая будет суммировать эти поля и возвращать результат. Ф-ция не должна принимать параметров. Ф-цию вызвать через call, и привязать текущий об-т

6. Создать ф-цию, которая будет перемножать переданные в неё 3 числа. Ф-цию вызвать через apply

7. Сделать задание 5 через apply

8. В html разметке создать обычный текстовый инпут, на который поставить событие input. Вывести в консоль вводимый текст. В качестве об-та элемента использовать this