by Anthony Fu @antfu
Traduzido pelo Google, abra um PR para ajudar a melhorar a tradução.
TypeScript 4.0 é recomendado neste desafio
Currying é a técnica de converter uma função que recebe vários argumentos em uma sequência de funções, cada uma com um único argumento.
Por exemplo:
const add = (a: number, b: number) => a + b
const three = add(1, 2)
const curriedAdd = Currying(add)
const five = curriedAdd(2)(3)
A função passada para Currying
pode ter vários argumentos, você precisa digitá-la corretamente.
Neste desafio, a função curried aceita apenas um argumento por vez. Depois que todo o argumento for atribuído, ele deverá retornar seu resultado.