var add = (function () {
var counter = 0;
return function () {return counter += 1}
})();
add();
add();
add();
Какой алгоритм выполнения? По шагам. Почему такое не работает:
var add = (function () {
var counter = 0;
return function () {return counter += 1; alert("s")}
})();
add();
add();
add();
Почему не срабатывает alert? Ведь каунтер увеличивается. У меня уже крыша едет...
И каким образом вообще это должно работать? Почему counter=0 делается только один раз, но при этом если написать так:
var add = (function () {
var counter = 0;
alert("check");
return function () {return counter += 1;}
})();
То эта гребанная фигня выполняет чек, почему тогда каунтер не обнуляется постоянно? Что это за неведомый ужас? Как это вообще работает?