CommonJS函数声明范围的良好实践

时间:2017-04-14 22:17:48

标签: javascript node.js scope commonjs

对于在这样的情况下在CommonJS模块中声明函数的地方,有一个很好的做法:

// function foo() { ... }

module.exports = function () {
   // function foo () { ... }

   return function () {
        // function foo () { ... }

        return foo();
   };
};

function foo {}应该去哪里? 当然,我假设你真的可以在模块代码中的3种可能性之间做出选择,并且所有这些可能都按预期正常工作。我使用函数作为示例,因为我认为它使我的问题更清楚,但它也适用于可以封装在这些范围内的任何代码逻辑。

1 个答案:

答案 0 :(得分:0)

module.exports的目的是让其他模块可以导入一些东西,而这就是它的全部功能。

这意味着您在没有module.exports的情况下使用的相同约定适用于此处。