diff --git a/snippets/prod.md b/snippets/prod.md new file mode 100644 index 000000000..0c8dd2b74 --- /dev/null +++ b/snippets/prod.md @@ -0,0 +1,17 @@ +--- +title: prod +tags: math,array,intermediate +--- + +Returns the product of two or more numbers/arrays. + +- Use `Array.prototype.reduce()` to multiply each value with an accumulator, initialized with a value of `1`. + +```js +const prod = (...arr) => [...arr].reduce((acc, val) => acc * val, 1); +``` + +```js +prod(1, 2, 3, 4); // 24 +prod(...[1, 2, 3, 4]); // 24 +```