gpt4 book ai didi

javascript - js函数使用参数的区别

转载 作者:行者123 更新时间:2023-11-28 18:37:25 25 4
gpt4 key购买 nike

有什么区别:

// Example 1 sum(8,2)
console.log(sum(8,2)); // Outputs what??
// Example 2 sum(8)(2)
console.log(sum(8)(2)); // Outputs what??

function sum(x,y) {
return x+y;
}

function sum(x) {
return function(y){
return x+y;
}

}

为什么使用其中一种而不是另一种?为什么?

最佳答案

您正在尝试做的事情称为 Function Currying

试试这个:

function sum(x) { 
return function(y) { return x + y; }
};
var sumWith4 = sum(4);
var finalVal = sumWith4(5);
finalVal = sumWith4(8);

优点之一是它有助于重用抽象函数。例如,在上面的示例中,我可以重用 sumWith4 将 4 添加到任何数字,而无需显式调用 sum(4,5)。这是一个非常简单的例子。在某些情况下,函数的一部分将根据第一个参数进行评估,而另一部分则根据第二个参数进行评估。因此,您可以通过向其提供第一个参数来创建一个部分函数,​​然后为多个不同的第二个参数重复重用该部分函数。

关于javascript - js函数使用参数的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36832610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com