module是随文件而生的全局变量,它有exports属性,这个属性默认是一个空的字典。
node的设计者画蛇添足有定义了一个exports全局变量,export指向module.exports所指向的空字典。
所以,当你想要往module.exports里面放东西时,可以简写为exports.myfunction=...的形式。
但是如果你给exports赋值,比如exports={myfunction:...},那就大错特错了:exports和module.exports不再指向同一个东西了,当然要以module.exports为准了!因为exports本身就是画蛇添足的产物,是module.exports的附庸,是为了方便而制造的可有可无的脚手架。
相关文章
- 深入理解PyTorch中的train()、eval()和no_grad()
- node中的fs模块和http模块的学习
- 文本左右对齐(字符串、模拟)、螺旋矩阵 II(数组、矩阵)、二叉树中的最大路径和(树、深度优先搜索)
- Object类中equals,hashCode和toString方法的学习
- Java中Object类的equals()和hashCode()方法深入解析
- 常见数据库mysql、oracle和DB2中is null 和 =null 的区别
- android中sqlite数据库的基本使用和添加多张表
- python中的静态成员方法 和 类成员方法
- 集合中的工具类Collections和Arrays
- scala中nothing和null的区别