柯里化

概念

所谓 " 柯里化 " ,就是把一个多参数的函数,转化为单参数函数。
把接受多个 参数 函数 变换成接受一个单一参 数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。

 

// 柯里化之前 
function add(x, y) { 
    return x + y; 
}

add(1, 2) // 3 



// 柯里化之后 
function add(y) { 
    return function (x) 
    { 
        return x + y; 
    }; 
}

add(2)(1) // 3

 

/*
    下面的例子,这里我们定义了一个 add 函数,它接受一个参数并返回一个新的函数。调用 add 之
    后,返回的函数就通过闭包的方式记住了 add 的第一个参数。一次性地调用它实在是有点繁琐,好在
    我们可以使用一个特殊的 curry 帮助函数(helper function)使这类函数的定义和调用更加容易。
*/

var add = function(x) { 
    return function(y) 
    { 
        return x + y; 
    }; 
};

var increment = add(1); 
var addTen = add(10); 


increment(2); // 3 
addTen(2); // 12

 

1

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页