Currying - sabrinabm94/javascript GitHub Wiki

Currying

É a técnica de pegar uma função com vários parâmetros e quebrar em várias funções com um único parâmetro.

var add = function(x, y) {
   return x + y;
};

add(1, 2) // 3
var add = function(x) {
    return function(y) {
        return x + y;
    };
};

add(1)(2); // 3
const greeting = greet => name => greet + ' ' + name;
const hello = greeting('Hello');

hello('World'); // Hello World
hello('Matheus'); // Hello Matheus

Referências

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