nodejs . module.exports

//utils.js
let a = 100; console.log(module.exports); //能打印出结果为:{} console.log(exports); //能打印出结果为:{} exports.a = 200; //这里辛苦劳做帮 module.exports 的内容给改为 {a : 200} exports = '指向其余内存区'; //这里把exports的指向指走 //test.js var a = require('/utils'); console.log(a) // 打印为 {a : 200}复制代码

从上面能够看出,其实require导出的内容是module.exports的指向的内存块内容,并非exports的。
简而言之,区分他们之间的区别就是 exports 只是 module.exports的引用,辅助后者添加内容用的。bash

用白话讲就是,exports只辅助module.exports操做内存中的数据,辛辛苦苦各类操做数据完,累得要死,结果到最后真正被require出去的内容仍是module.exports的,真是好苦逼啊。ui

其实你们用内存块的概念去理解,就会很清楚了。spa

 

 

 

而后呢,为了不糊涂,尽可能都用 module.exports 导出,而后用require导入。code

相关文章
相关标签/搜索