exports、module.exports属于CommonJS模块规范,CommonJS模块就是对象,运行时加载。
exports
和module.exports
都指向一块内存区域,exports = module.exports = {}
。exports
只是module.exports
的引用,辅助后者添加内容用的。- 为了避免糊涂,尽量都用
module.exports
导出,然后用require
导入。
export、export default属于ES6模块,ES6模块不是对象,编译时加载(静态加载)
export和export default区别:
- 在一个文件或模块中,
export
可以有多个,export default
仅有一个 - 通过
export
导出,导入时要加{}
,export default
则不需要 export
能直接导出变量表达式,export default
不行