为什么nodejs CommonJS是同步的,前端amd,cmd是异步的?es6模块呢

为什么nodejs CommonJS是同步的,前端amd,cmd是异步的?es6模块呢?

阅读 4k
1 个回答

对后端来说,同步加载没有问题,因为

  1. 模块都在本地,等待时间就是硬盘时间;
  2. 一旦启动之后一般不会关,可靠性比启动时间重要。

对前端来说

  1. 模块都在服务器上,需要通过网络请求,太慢;
  2. 同步xhr会堵塞浏览器,假死的话用户体验很差,首屏时间很重要。

设计es6模块的时候,并没有强行指定同步或异步。但是所有浏览器对<script type="module"></script>都会默认加defer,所以可以认为也是异步的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题