commonjs
1.用法:
module.exports = {}
或exports xxx,本质上exports是module.exports的引用,实际上导出的是module.exports
require()
2. 时期:运行时导入
3. 导出的值:是拷贝对象或值
esmodule
- 用法:
导入:import(),导入的是const常量,不能改变其值
导出:export xxx/export default xx,不论是值还是对象,都是导出它的引用,所以如果是基本类型值,导入的也会跟着变 - 导入时期:编译时会提升优先级,将其放到最上方执行。编译时期导入,找到一个就递归执行该文件
- 导出的值:是值的引用