一、首先当我们加载文件模块时,通过require加载的模块,返回值有两种情况:
1、如果,该模块有向外暴露内容,则返回值是一个对象,例如:
const fs = require('fs');
console.log(fs) //输出的就是一个对象
2、如果该模块没有向外暴露内容或者暴露的是空对象,那么返回的就是一个空对象( {} )
二、module.exports和exports的区别
1、require函数返回的是module.exports;
2、module.exports和exports的关系:
exports相当于module.exports的一个快捷方式,默认也是指向module.exports的内存,但是require函数加载某个模块时,返回的始终是module.exports的指针指向的内容;