@vevesektor

Не могу понять, кто может помочь?

let obj, method;

obj = {
  go: function() { alert(this); }
};

(method = obj.go) ();   //  undefined


Что произойдет в этом куске кода? (method = obj.go) ();

В первых скобках будет: method = function() { alert(this); }

Правильно я понимаю что конечное выражение будет таким? function() { alert(this)} ()
  • Вопрос задан
  • 131 просмотр
Пригласить эксперта
Ответы на вопрос 1
@qwazimord
Интроверт
Вы закинули в переменную method - ссылку на метод(функцию) из объекта obj. Значит теперь можно вызывать этот метод по ссылке - method().
Но нужно помнить, что контекст метода будет другим, что и показывает undefined.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы