CommonJs
CommonJs中 require可以动态加载语句,代码发生在运行时
CommonJs混合导出,还是一种语法,只不过不用声明前面对象而已,当我导出引用对象时之前的导出就被覆盖了
CommonJs导出值是浅拷贝,可以修改导出的值,这在代码出错时,不好排查引起变量污染
Es Module
Es Module是静态的,import 不可以动态加载语句,只能声明在该文件的最顶部,代码发生在编译时
Es Module混合导出,单个导出,默认导出,完全互不影响
Es Module导出是引用值(存在映射关系),并且值都是可读的,不能修改
推荐阅读:
CommonJS 和 ES Module 区别
聊聊什么是CommonJs和Es Module及它们的区别
ommonJs 和 ESModule 的 区别整理