node.js可以分为三大模块:内置模块(核心模块)、文件模块(自己写的js文件等)、第三发模块,通过require加装模块时是同步并依次进行的,而且内置模块在安装node.js时已经编译成二进制文件了,速度较快
require加载原理
module模块导出
module.exports和exports指向的是同一块内存空间,初始化的时候是一个空对象{},但是require获取的其实是module.exports,所以如果改了exports的内存指向,比如exports='test',那么在其他模块require的时候是获取不到的
test.js
function add(x,y){
return x +y;
}
function say(word){
console.info('hello ' + word);
}
module.exports.add = add;
module.exports.say = say;
引入test.js
const u = require('./test.js');
var r = u.add(5,6);
console.log(r);
u.say('zhangsan');