我有一个像这样的模块:
var myMod = function() {
return {
f_a: function() {}
f_b: function() {}
}
})();
我需要从f_b
致电f_a
,但我不知道什么是最好的方法。
答案 0 :(得分:1)
还有一个额外的)()
。看来您想创建一个立即调用的函数表达式。
var myMod = function() {
return {
f_a: function() {
console.log('f_a')
},
f_b: function() {
console.log('f_b');
}
}
};
console.log(myMod().f_a())
如果要从f_b调用f_b,请使用this
。实际上,如果您正确地看到它,则此函数将返回object
。在JavaScript内部的对象中,使用this
var myMod = function() {
return {
f_a: function() {
console.log('f_a')
},
f_b: function() {
this.f_a();
console.log('f_b');
}
}
};
console.log(myMod().f_b())
答案 1 :(得分:1)
var myMod = (function() {
return {
f_a: function() {console.log('hi from f_a');},
f_b: function() {this.f_a();}
}
})();
myMod.f_b();
您可以这样做
var myMod = (function() {
return {
f_a: function() {console.log('hi from f_a');},
f_b: function() {this.f_a();}
}
})();
myMod.f_b();