AMD、CMD、CommonJs的优缺点,区别? 您所在的位置:网站首页 amd的优缺点 AMD、CMD、CommonJs的优缺点,区别?

AMD、CMD、CommonJs的优缺点,区别?

2024-07-07 03:56| 来源: 网络整理| 查看: 265

要理解什么是AMD、CMD、CommonJs?还需要理解Js的模块化

什么是模块化?

将一个复杂的程序依照一定的规则封装成几个文件, 并进行组合在一起。每个模块的内部数据是私有的, 只是向外部暴露一些接口(方法)与外部其它模块通信。

模块化的优点?

1、避免命名空间的冲突(减少命名空间的污染) 2、更好的分离,实现按需加载 3、提高可代码的复用性 4、提高了代码的维护性 模块化的发展史

实现模块化的方式

在这里插入图片描述 1、AMD/CMD/CommonJs是JS模块化开发的标准,目前对应的实现是RequireJs/SeaJs/nodeJs 2、CommonJs主要针对服务端,AMD/CMD主要针对浏览器端 3、AMD/CMD区别,虽然都是并行加载js文件,但还是有所区别,AMD是预加载,在并行加载js文件同时,还会解析执行该模块(因为还需要执行,所以在加载某个模块前,这个模块的依赖模块需要先加载完成);而CMD是懒加载,虽然会一开始就并行加载js文件,但是不会执行,而是在需-要的时候才执行。

AMD、CMD的优缺点

AMD优点:加载快速,尤其遇到多个大文件,因为并行解析,所以同一时间可以解析多个文件。 AMD缺点:并行加载,异步处理,加载顺序不一定,可能会造成一些困扰,甚至为程序埋下大坑。

CMD优点:因为只有在使用的时候才会解析执行js文件,因此,每个JS文件的执行顺序在代码中是有体现的,是可控的。 CMD缺点:执行等待时间会叠加。因为每个文件执行时是同步执行(串行执行),因此时间是所有文件解析执行时间之和,尤其在文件较多较大时,这种缺点尤为明显。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有