UNPKG

functional-javascript-workshop

Version:

The basics of functional programming in JavaScript. No libraries required.

9 lines (7 loc) 342 B
function reduce(arr, fn, initial) { return (function reduceOne(index, value) { if (index > arr.length - 1) return value // end condition return reduceOne(index + 1, fn(value, arr[index], index, arr)) // calculate & pass values to next step })(0, initial) // IIFE. kick off recursion with initial values } module.exports = reduce