что то в последнее время не часто с js сталкиваюсь, поэтому многие вещи подзабыл, и вот, попалась мне одна вроде бы тривиальная задачка.
какое должно быть тело функции чтобы был вывод как в комментах в коде
var summator = function(val) {
//
};
console.log(summator(1)); // 1
console.log(summator(5)); // 6
console.log(summator(3)); // 9
пока пришёл к довольно колхозному решению
var summator = function(val) {
if (typeof summator.sum === 'undefined')
summator.sum = 0;
summator.sum += val;
return summator.sum;
};
как написать при помощи замыканий ?
Вам нужно так или иначе выделить аккумулятор, в котором будет храниться сумма. Как вы правильно написали, это делается через замыкание - с применением промежуточной анонимной функции, в которой и будет создан аккумулятор
var summator = (function() {
var accumulator = 0;
return function (increment) {
return accumulator += increment;
}
})();
С ES6 это можно сократить до однострочника
var summator = ((accumulator) => i => accumulator += i)(0)
Виртуальный выделенный сервер (VDS) становится отличным выбором
Добрый день уважаемыеРазбираюсь с панелью навигации по одностраничнику возникли вопросы, очень надеюсь что вы подскажите как решить
Есть папка с HTML-ФайламиПросто папка, лежащая прямо у пользователя, без вебсервера