Sofiane Boumedine Lexique Dev

Currying

JavaScript 🟡 Mid

Type : Concept

Definition

Le currying transforme une fonction a plusieurs arguments en une suite de fonctions a un seul argument. Chaque appel retourne une nouvelle fonction jusqu'a ce que tous les arguments soient fournis.

Analogie

Commander un sandwich ingredient par ingredient : d'abord le pain, puis la garniture, puis la sauce, et seulement la tu obtiens le sandwich complet.

Exemple de code

const curry = (fn) => (a) => (b) => fn(a, b);
const add = curry((a, b) => a + b);
const add5 = add(5);
console.log(add5(3)); class="cmt">// 8

Cas d'usage

Creer des fonctions specialisees a partir d'une fonction generique, comme des validateurs preconfigures.

coreinterview-question