@web-quest3

Что значат скобки после функции в JS?

myfunc()();
Почему такая конструкция в чем ее преймущество может ли быть нное кол-во ()()()()() ?
  • Вопрос задан
  • 408 просмотров
Решения вопроса 4
@ndbn
Оператор вызова.
Предполагается что вызов myfunc() вернёт функцию, которую так-же можно вызвать.
Более понятная запись:
var sub = myfunc();
sub();
Ответ написан
Комментировать
qork
@qork
{ background: #F00B42 }
function myfunc(x){
	return function(y){
		return x + y;
	}
}

var takeFive = myfunc(5);
//function takeFive(y){return 5 + y}

//тоже что myfunc(5)(2)
alert(takeFive(2)); // 7

//тоже что myfunc(5)(5)
alert(takeFive(5)); // 10
Ответ написан
Sanasol
@Sanasol Куратор тега JavaScript
нельзя просто так взять и загуглить ошибку
myfunc() - возвращает функцию
() - вызывает возвращаемую функцию

Сколько влезет можно делать таких, только это бредово даже звучит, не то что делать :)
Ответ написан
Комментировать
@neolane
Возможно это замыкание
https://learn.javascript.ru/functions-closures
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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