Большинство из нас будет сбито с толку ключевым словом this в javascript, потому что this в JS отличается от this на другом языке программирования (JAVA).

ЗАМЕТКА :

Для функции All Regular это указывает на объект WINDOW (Global Context).

Например,

Вывод :

Вы можете видеть, что когда это обычный функциональный вызов, где бы он ни присутствовал, он ссылается на глобальный объект (окно в браузерах).

User.sayHello() => — это вызов объекта, поэтому это относится к объекту пользователя.

Давайте посмотрим на некоторые другие примеры

В этом случае нам нужно перебрать все элементы в массиве студентов и сопоставить их с ответственными, как я уже говорил ранее, обычная функция «это» относится к глобальному контексту, и у нас нет ответственных, объявленных в глобальном контексте, поэтому это остается неопределенным

Так что это что-то сбивает с толку в JavaScript, чтобы преодолеть, мы можем сделать 2 вещи

  1. Привяжите это ключевое слово

2 . мы можем использовать стрелочную функцию ES 6, где «это» не относится к своему собственному контексту, а использует this окружающего лексического контекста.