调用变量内部的函数

Calling function inside a variable

本文关键字:函数 内部 变量 调用      更新时间:2023-09-26

我正在使用一个插件JS,需要调用其中的一个函数。

它在一个变量中具有功能,比如

var win = window;
var Page = function(pageOptions, callback) {
    function abc(){
           --------
     }
     function xyz(){
         ------
     }
};
win.Sales = {
    Page: Page
};

现在,我需要调用一个函数abc((。我该怎么称呼它呢。已尝试使用win.Sales.page.abc();

请帮我解决这个问题。提前谢谢。

您的配置无法做到这一点,因为函数是本地私有

你应该让它们在全球范围内可以访问,比如:

var Page = function(...) {
    ...
};
Page.abc = function() {
    ...
};

这样,abcPage的一个属性,然后您可以像Page.abc一样访问它,并像Page.abc()一样执行它。函数基本上也是对象,因此它们也可以具有属性。

不能调用函数abc,因为它被声明为变量Page引用的函数的私有成员。

如果要调用函数,必须将其作为变量Page的属性。

var Page = function(){
    .........
    .........
    .........
}
Page.abc = function(){
}

但变量作用域还有另一个问题,比如如果函数Page中定义了另一个变量x,并在函数abc中使用,它将不起作用。

不管怎样,既然你已经说过它是一个js插件,我认为你不可能更改函数Page。所以答案是否定的,你不能那样做。