AMD/CMD/CommonJS到底是什么

AMD/CMD/CommonJS到底是什么?

一、三者相同点

同为JS模块化开发的标准。
CommonsJS---nodeJs---服务端规范
AMD---RequireJs---浏览器端规范,老大
CMD---SeaJS---浏览器端规范,小三

二、AMD和CMD区别

AMD:

  • 预加载,并行加载JS时,还会解析改模块,所以要将需要的模块提前加载出来。
  • 提前执行,依赖前置
  • 优点:加载快速,并行解析,同时可以解析多个文件
  • 缺点:并行加载,一步处理,加载顺序不确定,容易引起bug

CMD:

  • 懒加载,虽然开始会并行加载JS,但是不会执行,而是在需要的时候执行。
  • 延后执行,依赖就近
  • 优点:js执行文件顺序是可控的
  • 缺点:执行等待时间会累加,多文件时最明显

你可能感兴趣的:(AMD/CMD/CommonJS到底是什么)