我在一个脚本文件A.js中创建了嵌套函数,如下所示:
function A(){
function B(){}
}
如果我想在另一个脚本文件C.js中调用函数B(),我该怎么办?
答案 0 :(得分:1)
您要做的似乎是使用B
中的变量创建function closure A()
。如果您在致电B
后返回B
,则可以访问此约束A()
。然后,在C.js
中,您可以通过调用B
并使用返回值来访问A
:
A.js
:
function A([parameters]) {
[variables]
function B() { [function body] }
//Return B from A:
return B;
}
C.js
:
//Get B:
var bFunction = A([parameters]):
//Call bFunction:
bFunction();
答案 1 :(得分:0)
您必须返回嵌套函数:
function A(){
return function B(){}
}
然后在C.js
var funB = A();
funB();
或
A()();
答案 2 :(得分:0)
您必须从父函数B()
返回嵌套函数A()
。
您的代码
function A(){
function B(){}
}
使用return语句
更新了代码function A(){
return function B(){ //return added
}
}
您可以通过向函数调用添加额外的()
个括号来访问子函数,如下例所示。
A()();