Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Объект, this и стрелочная функция (подроб. внутри)

Raспояс Обелискович Оракул (71387), закрыт 6 лет назад
Всем привет!))
Вот столкнулся с такой так сказать фигней-особенностью
Если я в стрелочной функции использую this, то это this при задействовании не определяется. то есть вместо значений выводит undefined Код на картинке.
Но если я использую стандартное объявление функции то все работает то есть function sayHi() ...
Вопрос, Почему undefined? Может я что-то делаю не так?
Всем заранее спасибо за ответы!
Лучший ответ
̑̈☣̑̋̑̎̑̈ ☠̤̥̤̭̤ ☢J̯̤ͣͮͣ̐̈ Высший разум (160387) 6 лет назад
стрелочные функции эта другой уровень там нет this return arguments и т д В них совершенно другой подход заложен и это тоже не надо {}

Остальные ответы
Дед Мазай Гений (58129) 6 лет назад
В стрелочных функциях нет this и arguments. Если стрелочная функция определена в другой функции, она берёт this и arguments из той функции, в которой находится (конечно, если она не стрелочная).
Raспояс ОбелисковичОракул (71387) 6 лет назад
Понял, я ее (функцию) сейчас рассмотрел просто как переменную.
Дед Мазай Гений (58129) Как переменную можно оформить и обычную функцию let sayHi = function() { ...} тогда в ней появятся this и arguments
Ярослав Искусственный Интеллект (107899) 6 лет назад
Проще говоря: стрелочные функции используют контекст объявления (в них this === внешнему this).
Похожие вопросы