635 B
635 B
title, tags, firstSeen, lastUpdated
| title | tags | firstSeen | lastUpdated |
|---|---|---|---|
| accumulate | math,array,intermediate | 2020-05-04T12:20:46+03:00 | 2020-11-03T21:46:13+02:00 |
Creates an array of partial sums.
- Use
Array.prototype.reduce(), initialized with an empty array accumulator to iterate overnums. - Use
Array.prototype.slice(-1), the spread operator (...) and the unary+operator to add each value to the accumulator array containing the previous sums.
const accumulate = (...nums) =>
nums.reduce((acc, n) => [...acc, n + +acc.slice(-1)], []);
accumulate(1, 2, 3, 4); // [1, 3, 6, 10]
accumulate(...[1, 2, 3, 4]); // [1, 3, 6, 10]