2.2 KiB
2.2 KiB
title | id | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
Accumulator factory | 594810f028c0303b75339ace | 5 | Аккумуляторный завод |
Description
Создайте функцию, которая принимает один (числовой) аргумент и возвращает другую функцию, которая является аккумулятором. Возвращенная функция аккумулятора, в свою очередь, также принимает один числовой аргумент и возвращает сумму всех числовых значений, переданных до этого аккумулятора (включая начальное значение, переданное при создании аккумулятора).
Правила:
Не используйте глобальные переменные.
Подсказка:
Закрытие сохраняет внешнее состояние.
Instructions
Tests
tests:
- text: <code>accumulator</code> - это функция.
testString: 'assert(typeof accumulator === "function", "<code>accumulator</code> is a function.");'
- text: <code>accumulator(0)</code> должен возвращать функцию.
testString: 'assert(typeof accumulator(0) === "function", "<code>accumulator(0)</code> should return a function.");'
- text: <code>accumulator(0)(2)</code> должен вернуть номер.
testString: 'assert(typeof accumulator(0)(2) === "number", "<code>accumulator(0)(2)</code> should return a number.");'
- text: 'Передача значений 3, -4, 1.5 и 5 должна возвращать 5.5.'
testString: 'assert(testFn(5) === 5.5, "Passing in the values 3, -4, 1.5, and 5 should return 5.5.");'
Challenge Seed
function accumulator (sum) {
// Good luck!
}
After Test
console.info('after the test');
Solution
// solution required