Задать вопрос

Как правильно понять такой вызов функции?

var a = 1;
function getFunc() {
  var a = 2;
  var func = function() { alert(a); };
  return func;
}
getFunc()();

Вопрос про getFunc()();
  • Вопрос задан
  • 302 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@AlexRas
Это тоже самое что и
var a = 1;
function getFunc() {
  var a = 2;
  var func = function() { alert(a); };
  return func();
}
getFunc();
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
petermzg
@petermzg
Самый лучший программист
Эта функция getFunc() возращает функцию, которая запомнила свое окружение, т.е. локальную переменную "а".
А далее идет вызов функции, что была возращена. getFunc()();
Ответ написан
maaGames
@maaGames
Погроммирую программы
Вызов функтора возвращаемой функцией.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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