📅  最后修改于: 2023-12-03 15:35:27.816000             🧑  作者: Mango
Underscore.js 是一个JavaScript库,提供了许多有用的函数,用于函数式编程风格的开发。其中一个非常有用的函数是 _.flip2(),它可以快速交换函数的前两个参数。
_.flip2(function)
返回一个新的函数,该函数与原始函数相同,但是前两个参数交换。
_.flip2 = function(func) {
return function(first, second) {
return func.call(this, second, first);
};
};
代码:
function subtract(a, b) {
return a - b;
}
var flippedSubtract = _.flip2(subtract);
console.log(subtract(2, 5));
// expected output: -3
console.log(flippedSubtract(2, 5));
// expected output: 3
解释:
在上面的示例中,我们定义了一个名为subtract的函数,它将两个数相减并返回结果。然后我们使用_.flip2()函数创建一个名为flippedSubtract的新函数,该函数与subtract相同,但是前两个参数已经被交换了。我们分别调用了这两个函数来展示它们的不同。