这是一个例子。
function parentOne(){
//do something
function ChildOne(){
// do something
};
};
function parentTwo(){
//how can I input data into ChildOne() from here?
};
我正在尝试修复错误。只有在撞到childOne后,ParentTwo才能工作。那是因为当在我的代码中击中childOne时,它将启动Direction API。之后,我可以使用parentTwo更改表单中的to或from值,它将提交。有点难以解释,但是如果用户没有首先通过parentOne函数执行操作,则需要parentTwo来初始化childOne。
我知道javascript,但我之前从未尝试过,如果对我来说有点可疑。
最佳答案
您可以将ParentOne称为创建函数的工厂(ChildOne)。但是您需要稍微重写一下。
function parentOne(){
//do something
return function ChildOne(){
// do something
return 'x';
};
};
function parentTwo(){
//how can I input data into ChildOne() from here?
var a = parentOne();
//You can call a() now. It runs the returned function which is ChildOne
var b = a();
//b is now the result of ChildOne, which is 'x'
};