2014-11-03 47 views
2

假設我在Node中有一個模塊,它有兩個功能func1()func2()。 Func1需要在執行過程中調用func2。NodeJS模塊功能約定 - 調用自己的功能

我想有出口,因此它可以被單獨測試FUNC2,所以我設置的出口模塊出口到包括func1func2

(function (module) { 

    module.func1= function (something) { 

     var result = module.func2(something); 

     return result + something;  
    } 

    module.func2 = function(something) { 

     return something * something; 
    } 
})(module.exports); 

的問題是.. 難道這就是定義/調用func2的最佳方式

我想不出有什麼辦法,但撥打電話module.func2()對我而言似乎有點不對,因爲某些原因。

更新:進一步闡述:

看來,通過使用module.func2我真的打電話module.exports.func2這是走出去之類的回來再次,而不是保持它所有的內部..

沒有其他原因真的,我明白,這工作,我只是想知道,如果這是在節點上普遍接受的設置

回答

1

可以使用this代替module,這樣

.... 
var result = this.func2(something); 
... 
+1

太棒了,這似乎更合理! – antfx 2014-11-03 17:20:25