javascript - 在 module.exports 中调用函数的上下文安全方法是什么?

标签 javascript node.js this

我的 JS 文件中有这个:

module.exports.function1() {};

module.exports.function2() { this.function1(); };

module.exports.function3() { module.exports.function1(); };

module.exports 调用其他函数的首选方式是 function2()function3() 方式?或者,还有更好的方法?

我不喜欢 function2() 方式,因为它不是上下文安全的,而且 function3() 方式对我来说看起来有点奇怪。

最佳答案

就我个人而言,我更喜欢在顶部声明导出,然后将声明放在下面

module.exports = { 
    function1: function1, 
    function2: function2,
    function3: function3
}
function function1() { }
function function2() { function1(); }
function function3() { function1(); }

编辑我这样做是为了使函数声明可以相互引用,而无需通过module.exports或任何东西。由于它位于模块中,因此它是独立的。此外,当您打开文件时,您可以清楚地查看导出内容,而无需先费力地完成所有实现。

关于javascript - 在 module.exports 中调用函数的上下文安全方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37413157/

相关文章:

javascript - React - 动态导入组件

javascript - Backbone.js Once()事件方法: counter increment example

javascript - 不再支持 JSpec?

JavaScript 改变 this 的所有权

Jquery 获取 this 或 $(this) 内的所有...

javascript - 当您在 angularjs 中启用 html5 模式时会发生什么?

javascript - jQuery magnific-popup : open 2 popup iframe with differents width/height

javascript - Function.bind.bind(Function.call) 如何取消柯里化(Currying)?

node.js - 从 ColumnSet 访问源对象

node.js - NodeJS SHA1 获取原始输出(PHP SHA1 原始输出等效)