Skip to content

How to implement my own reduce function

Daisho Komiyama edited this page Mar 5, 2020 · 2 revisions

Reduce as the most versatile function in programming language.

const multiplyBy2 = x => x * 2;
const add3 = x => x + 3;
const divideBy5 = x => x / 5;

const reduce = (array, howToCombine, accum) => {
    for (let i = 0; i < array.length; i++) {
        accum = howToCombine(accum, array[i]);
    }
    return accum;
};

const runFunctionOnInput = (input, fn) => {
    return fn(input);
};

const output = reduce([multiplyBy2, add3, divideBy5], runFunctionOnInput, 11);
Clone this wiki locally