假设我有一个名为的文件server.js
:
//server.js
var net = require('net');
var server = net.createServer(function (socket){
socket.on('data',function(data){
console.log("Received: "+data);
});
});
还有另一个文件functions.js
:
//functions.js
module.exports = {
test: function () {
// do something
},
other: function () {
// do something
}
};
我知道我可以做这样的事情:
var functions = require('./functions');
functions.test();
但我确实希望能够直接使用该功能,如下所示:
require('./functions');
test();
有什么建议?
虽然您可以将它们加载到global
变量中,但是另一种可行的,也许更明智的方法是将方法分配给变量test
。
var test = require('./functions').test;
var functions = require('./functions');
var test2 = functions.test;
* =我说得很明智,因为接触全局范围可能会产生一些意外结果,从而降低了一般的可读性(嘿,这个test
变量来自何处?我在代码中的任何地方都没有看到它的定义。),最坏的情况是在这种情况下,您可能会遇到名称冲突,甚至覆盖global
范围中需要的内容。并不是说将某些东西加载到全局范围内不是一个好主意,甚至不是彻头彻尾的有用,但通常,最好是将它们放在局部范围内以提高可读性。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句