我有这样的事情:
// This executes once when the page loads.
(function() {
//under some conditions, it calls:
myfunction();
function myFunction() {
// defines function
}
}());
function thisIsCalledByAnOnClick() {
// HERE I need to call myFunction()
}
我不希望从控制台调用myFunction()
,因此我将其包含在匿名函数中。所以,如果我需要在其他地方调用它,我会将它声明两次或者我该怎么做?
答案 0 :(得分:2)
在封闭内thisIsCalledByAnOnClick
可以访问myFunction
。有关详细信息,请参阅:module pattern。
// This executes once when the page loads.
var modul = function() {
//under some conditions, it calls:
myfunction();
function myFunction() {
// defines function
}
return {
thisIsCalledByAnOnClick : function() {
// HERE I need to call myFunction()
}
};
}();
答案 1 :(得分:1)
答案 2 :(得分:0)
您可以使用构造函数来封装这两个函数。一个是公共职能,另一个是私人。
d
答案 3 :(得分:0)
function() {
xyz = function() {
return this;
};
xyz.prototype= {
Myfunction1 : function(param1,param2) {
//some code!!!
},
Myfunction2 : function(param1,param2) {
//some code!!!
}
};
})();
function thisIsCalledByAnOnClick() {
instance=new xyz();
instance.Myfunction1(a,b)
}