柯里化:一种函数式编程技巧,把“接收多个参数的函数”转换为“一连串每次只接收一个参数的函数”,从而便于复用与部分应用(partial application)。该词也常用于描述这种“把参数分步传入”的写法。(在不同语境下也可能被更宽泛地用来指“把多参函数改写为可逐步传参的形式”。)
/ˈkʌriɪŋ/
Currying makes it easy to reuse a function by fixing its first argument.
柯里化可以通过固定第一个参数,让函数更容易复用。
In JavaScript, currying can improve composition by turning a function that takes three arguments into a pipeline of single-argument functions.
在 JavaScript 里,柯里化能通过把一个接收三个参数的函数改成单参数函数链,来提升函数组合(composition)的效果。
currying 来自数学家与逻辑学家 Haskell Curry(哈斯凯尔·柯里) 的姓氏。该概念与“把多参数函数等价地表示为一系列单参数函数”的思想相关,因此以他的名字命名,后加上英语动名词后缀 -ing 形成术语。