NodeJS模块函数约定 - 调用自己的函数

时间:2014-11-03 14:41:25

标签: javascript node.js

假设我在Node中有一个模块,它有两个函数func1()func2()。 Func1需要在执行期间调用func2。

我想在导出中使用func2,因此可以对其进行单独测试,因此我将exports模块导出设置为包括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,它正在退出课堂而不是将其全部保留在内部..

没有其他原因,我很欣赏这有效,我只是想知道这是否是Node中普遍接受的设置

1 个答案:

答案 0 :(得分:1)

您可以使用this代替module,就像这样

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