What is function currying?

Currying transforms a function with multiple arguments into nested functions, each taking a single argument.

const multiply = (a) => (b) => a * b;
multiply(2)(3); // 6