从左到右的部分申请?

时间:2015-12-31 01:42:11

标签: javascript bind partial-application

在JS中使用bind时,可以创建具有预定义参数的函数,例如: G:

var add = function (a, b) {
    return a + b;
};
var addToThree = add.bind(null, 3);

但是,如果我想预先定义第二个,第三个等等参数,而不是第一个参数,我该怎么办呢?

2 个答案:

答案 0 :(得分:0)

你可以做到

var add = function (a, b) {
    b = b || 5;
    return a + b;
};

ES6 Default Parameters中可以非常简单地使用

var add = function (a, b=5) {
    return a + b;
};

并将其称为add(3);

答案 1 :(得分:0)

在ES2015中,您可以执行以下操作:

{{1}}