Compose - sabrinabm94/javascript GitHub Wiki

Compose

É a técnica de criar funções pequenas para que a partir dessas possam ser geradas outras mais complexas facilitando o reuso.

// ES5
var compose = function(f, g) {
    return function(x) {
        return f(g(x));
    };
};

var toUpperCase = function(x) {
    return x.toUpperCase();
};

var exclaim = function(x) {
    return x + '!';
};

var angry = compose(toUpperCase, exclaim);

angry('ahhh'); // AHHH!

// ES6
const compose = (f, g) => x => f(g(x));
const toUpperCase = x => x.toUpperCase();
const exclaim = x => x + '!';

const angry = compose(toUpperCase, exclaim);

angry('ahhh'); // AHHH!

Referências

TUDO que você deve estudar de JavaScript antes do React - YouTube