【NodeJS】模块化编程

在nodejs中,我们可以利用module.exportsrequire进行模块化编程。

module.exports

在nodejs中,每个js文件默认都有一个变量module.exports,并且它的默认值是一个空对象{}



exports

module.exports的简写,在nodejs中,定义

var exports = module.exports;


require()

我们可以通过使用require()引入其他js文件中的module.exports变量。


// a.js
module.exports.test = 666;


// index.js
var m = require("a.js");

console.log(m); // 输出: {test: 666}

console.log(m.test);  // 输出: 666


小技巧

我们还可以让module.exports指向其他变量和类型。

// a.js
module.exports = function(){
    console.log("Hello");
};


// index.js
var m = require("a.js");

m(); // 输出 Hello

注意

exports 不能指向其他变量,因为它的指针指向其他变量后,就会与module.exports切断关系。

// a.js
exports = 666;  // 错误, exports不能指向其他变量


// index.js
var m = require("a.js");

console.log(m); // 输出: {}
posted @ 2020-08-05 11:35  CloudSir  阅读(29)  评论(0)    收藏  举报