我正在使用插件JS,需要在其中调用一个函数。
在变量中有函数,如
var win = window;
var Page = function(pageOptions, callback) {
function abc(){
--------
}
function xyz(){
------
}
};
win.Sales = {
Page: Page
};
现在,我需要调用函数abc()。我怎么称呼它。
已经尝试使用win.Sales.page.abc();
。
请帮我解决这个问题。提前谢谢。
答案 0 :(得分:2)
您无法对配置执行此操作,因为这些功能是本地或私有。
您应该在全球范围内访问它们,如:
var Page = function(...) {
...
};
Page.abc = function() {
...
};
这样,abc
是Page
的属性,然后您可以像Page.abc
一样访问它,并像Page.abc()
一样执行它。函数基本上也是对象,因此它们也可以具有属性。
答案 1 :(得分:1)
你不能调用函数abc
,因为它被声明为变量Page
引用的函数的私有成员。
如果要调用函数,必须将其作为变量Page
的属性。
var Page = function(){
.........
.........
.........
}
Page.abc = function(){
}
但是存在另一个变量作用域的问题,比如如果在函数Page
中定义了另一个变量x并在函数abc
中使用它,它将无效。
无论如何,既然你说它是一个js插件,我认为你不可能改变函数Page
。所以答案就是不,你不能这样做。