Partial sum array
JavaScript, Math · Jan 30, 2022

Creates an array of partial sums.
- Use
Array.prototype.reduce()
, initialized with an empty array accumulator to iterate overnums
. - Use
Array.prototype.slice()
to get the previous partial sum or0
and add the current element to it. - Use the spread operator (
...
) to add the new partial sum to the accumulator array containing the previous sums.
const accumulate = (...nums) =>
nums.reduce((acc, n) => [...acc, n + (acc.slice(-1)[0] || 0)], []);
accumulate(1, 2, 3, 4); // [1, 3, 6, 10]
accumulate(...[1, 2, 3, 4]); // [1, 3, 6, 10]
Written by Angelos Chalaris
I'm Angelos Chalaris, a JavaScript software engineer, based in Athens, Greece. The best snippets from my coding adventures are published here to help others learn to code.
If you want to keep in touch, follow me on GitHub.