如何显式引用全局函数
How to explicitly reference global functions?
我如何引用全局函数,在这种情况下,使用其名称将引用例如局部变量?
以这个简单的递归为例:
function foobar(foobar) {
return foobar(foobar+1); //<- error in this line
}
这将产生错误"foobar 不是函数",因为相同的名称被定义为参数。如何在不重命名函数或参数的情况下显式引用函数?我试过了
function foobar(foobar) {
return Window.foobar(foobar+1);
}
没有成功。
正如
@Juhana所说,这将起作用,你会得到一个Exception: InternalError: too much recursion
如预期的那样
function foobar(foobar) {
return window.foobar(foobar+1);
}
foobar(3);
可以使用命名函数表达式。在函数中使用函数名称(recursive
)。从外部将函数分配给名为 foobar
的变量:
var foobar = function recursive(foobar) {
return recursive(foobar + 1);
}
foobar(5);
相关文章:
- 正在全局范围中查找JavaScript函数
- 在javascript函数中设置全局变量
- javascript无法重新定义函数内部的全局对象
- javascript 中的全局函数
- cordova:例外:财产'requestFileSystem'的[对象全局]不是函数
- 如何从onclick函数设置全局变量并将其传递给另一个JS文件
- Javascript,从静态函数中打印全局对象
- 全局窗口热键在最小化chrome窗口时调用js函数
- 创建要在其他函数中使用的全局变量
- 从全局函数调用Ember控制器上的方法
- 保留 JQuery Vars 用于另一个函数(全局变量?)
- jQuery-函数全局变量
- jQuery - 如何使这个javascript函数全局化,以便其他函数可以访问它
- JS函数/全局变量的作用域
- Javascript;如何使函数全局可访问
- 全局在什么(函数(全局){一些代码.(这个)做
- 如何使用 (函数(全局) { .. })(这);.
- 我如何使变量newUser定义在一个函数全局
- 函数(全局){..}(this)的工作方式
- 我如何使我的变量包含在这个函数全局