gpt4 book ai didi

javascript - 在函数内将参数传递给函数 - javascript

转载 作者:行者123 更新时间:2023-11-30 15:07:10 25 4
gpt4 key购买 nike

我正在尝试将参数传递给函数内的函数;

function add() {
let x = arguments[0];

function s(num) {
return num + x;
}
}

add(2)(3) //second argument to be passed to 'function s'.

所以我希望调用返回 5。

最好的方法是什么?提前致谢。

最佳答案

Currying 是允许您部分应用函数参数的结构的名称。这意味着您无需将多个参数传递给一个函数并期待最终结果,而是可以传递该参数的一个子集并返回一个正在等待其余参数的函数。

正如@KevBot 已经指出的那样,您的示例缺少第二个函数的返回,并且将是:

function add() {
let x = arguments[0];

return function s(num) {
return num + x;
}
}

add(2)(3);

ES6 Curryed Hello World:

curryedHelloWorld = (greeting) => (name) => `${greeting}, ${name}!`;
curryedHelloWorld("Hello")("Tygar");

您甚至可以取消柯里化(Currying) curryedHelloWorld 示例,使其以相反的方式出现:

helloworld = (greeting, name) => curryedHelloWorld(greeting)(name);
helloworld("Hello", "Tygar");

关于javascript - 在函数内将参数传递给函数 - javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45580262/

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