node.js模块 – 导出对象及其属性作为函数

我想有一个模块,导出这样的function:

var log = require("log.js"); log("hello"); // should run console.log("hello") log.info("world"); // should run console.log("world") 

log.js的内容是做什么的? 我试图篡改module.exports对象,但似乎无法实现此function。

 function logger (data) { console.log(data); } logger.info = function (data) { console.log(data); } exports = module.exports = logger; 

而不是再次写相同的function,你也可以做

 logger.info = logger; 

如果您有兴趣了解更多关于module.exportsexports ,请阅读我的博客条目。

 exports.log = function(msg) { console.log(msg); } exports.info = function(msg) { console.log(msg); } 

另一种方法做到这一点。