首页 > 试题广场 >

说一下Commonjs、AMD和CMD

[问答题]

CommonJS:

JS在后端应用的一个同步规范。是让JS地位发生翻天覆地改变的一个规范!

起初JS只是用来书写脚本,因为规范缺陷等问题,例如没有模块系统、标准库较少、没有标准接口、缺乏包管理系统等等一系列问题,所以根本无法用来开发大型应用。CommonJS规范对这些缺陷进行了弥补,让JS一举跨度成为了一个可以进行大型应用开发的语言

它的实现主要包括:webpack、nodejs、npm


AMD:

JS在前端应用的一个异步规范,讲究依赖前置。

CommonJS提供了require,属于同步定义。由于模块存储在本地硬盘,服务器通过require获取这些模块自然就很迅速,看的只是读取速度;如果客户端想要通过require来获取模块,依赖的就是网速,这就有了很大的不定性!因此,AMD将依赖模块的语句放在一个回调中,回调在加载完成之后才会执行,这样就可以通过异步的方式来加载模块

实现:RequireJS


CMD:

可以自行选择同步或是异步,就近依赖,在什么地方使用,就在什么地方引入模块。
解决了AMD存在的一些问题,CMD规范有更强的包容性和人性化!并且在应用上也更加地简单方便

实现:seajs

编辑于 2021-10-05 16:17:49 回复(0)
1.CommnoJs: 同步加载模块,主要实践者nodejs, 2.CMD: 推崇依赖就近,延迟执行,主要实践者seajs; 3.AMD: 推崇依赖前置,提前执行,主要实践者requirejs;
发表于 2019-10-13 09:24:09 回复(0)