函数柯里化(Currying)

来源:互联网 发布:离散数学 左孝凌 知乎 编辑:程序博客网 时间:2024/05/29 10:56
函数柯里化(Currying)

在计算机科学中,柯里化是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。——详见维基百科

柯里化就是预先将某些参数传入,得到一个简单的函数。但是预先传入的参数被保存在闭包中,因此会有一些奇特的特性。比如:

例:
var adder = function(num) {
return function(y) {
return num + y;
}
}

var inc = adder(1);
var dec = adder(-1);
//inc, dec现在是两个新的函数,作用是将传入的参数值(+/-)1
alert(inc(99));//100
alert(dec(101));//100
alert(adder(100)(2));//102
alert(adder(2)(100));//102










本文为转载内容
0 0
原创粉丝点击