ESModule和CommonJS的比较以及注意事项
在 ES6 中,我们知道 import、export 取代了 require、module.exports 用来引入和导出模块,但是如果不了解 ES6 模块特性的话,代码可能就会运行出一些匪夷所思的结果,下面我将通过这篇文章为你揭开 ES6 模块机制特点。
关于二者的使用方式我就不具体介绍了,有兴趣的可以看一下我以前的博客:JavaScript Module使用语法
本文主要针对以下几个问题:
- 这二者输出的是拷贝还是引用,拷贝的话是深拷贝还是浅拷贝?
- 二者的加载运行时机有什么不同?
- 它们是如何解决循环依赖以及重复加载问题的?
- 二者的运行环境有什么不同,它们什么情况下可以混合使用,为什么可以?