介绍
CommonJS是一个项目,最初是服务于服务端的,在nodejs兴起后用于后端模块化,但是载体是js。
特点
- 每个文件就是一个模块,文件内的变量、函数、类都是私有的
require用来加载某个模块module代表当前模块,是一个对象exports是module上的一个属性,保存当前模块要导出的变量
注意
为了方便编写代码,nodejs在实现CommonJs规范的时候,为每个模块提供了一个exports的私有变量,指向module.exports。等效于:
var exports = module.exports所以可以直接这么写代码:
exports.val = 1直接给exports重新赋值是没有用的,因为改的是私有变量的指向,而不是module.exports