gpt4 book ai didi

javascript - 在方法内部执行方法

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:31:39 25 4
gpt4 key购买 nike

我目前正在 FreeCodeCamp 中进行 JavaScript 练习,我的代码应该使用的测试用例之一是函数调用,如下所示:

addTogether(2)(3);

这是我得到的基本功能:

function addTogether() {
return;
}

当我运行下面的代码时:

function addTogether() {
return arguments;
}

在编辑器提供的控制台中,我得到:

TypeError: addTogether(...) is not a function

指令提示使用 arguments 对象,它适用于只有一个参数对象的测试用例函数调用(即 addTogether(2, 3);),但不是我上面显示的那个。

当单独的参数对象采用我上面显示的格式时,有没有办法访问/利用它们?

注意:我不需要任何类型的答案来解决问题,只需要有关访问此类函数调用的参数的任何技术的信息。

帮助,非常感谢。

最佳答案

不要将其视为两组独立的论点。把它想象成你正在调用另一个函数(你就是)。函数是 JavaScript 中的一流值,因此您可以像使用任何其他值一样使用它们。这包括从函数中返回它们。

var f = function(y) {
console.log('f:', y);
};

var getF = function(x) {
console.log('getF:', x);
return f;
};

getF(1)(2);

函数还可以使用存在于任何父作用域中的值。松散地说,执行此操作的函数称为 closures.

function createGetX(x) {
return function() {
// Since x is in the parent scope, we can use it here
return x;
}
}

var one = createGetX(1);
console.log(one()); // Always
console.log(one()); // returns
console.log(one()); // one

关于javascript - 在方法内部执行方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40007211/

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