gpt4 book ai didi

javascript - JavaScript 函数可以返回自身吗?

转载 作者:行者123 更新时间:2023-12-03 00:19:28 25 4
gpt4 key购买 nike

我可以编写一个返回自身的函数吗?

我正在阅读一些关于关闭的描述 - see Example 6 - 函数返回一个函数,因此您可以将 func()(); 作为有效的 JavaScript 进行调用。

所以我想知道一个函数是否可以以这样的方式返回自身,这样你就可以将它无限地链接到自身,如下所示:

func(arg)(other_arg)()(blah);

使用参数对象、被调用者还是调用者?

最佳答案

有2-3种方法。正如您所说,一种是使用arguments.callee。如果您正在处理未存储分配给某处(您知道的)变量的匿名函数,这可能是唯一的方法:

(function() {
return arguments.callee;
})()()()().... ;

第二个是使用函数的名称

function namedFunc() {
return namedFunc;
}
namedFunc()()()().... ;

最后一个是使用分配给变量的匿名函数,但你必须知道该变量,所以在这种情况下,我看不出有什么理由,为什么你不能只给函数一个名称,并使用方法同上

var storedFunc = function() {
return storedFunc;
};
storedFunc()()()().... ;

它们在功能上都是相同的,但callee是最简单的。

编辑:我同意 SLAks 的观点;我也不推荐它

关于javascript - JavaScript 函数可以返回自身吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6959426/

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