AMD规范(RequireJS)、CMD规范(SeaJS)、CommonJS(BravoJS)规范的辨析

首先,AMD,CMD,CommonJS都实现了文件模块化。

对于依赖的模块:AMD是提前执行;CMD是延迟执行;

AMD是依赖前置,CMD是依赖就近;

AMD官方解释:https://github.com/amdjs/amdjs-api/wiki/AMD

CMD官方解释:https://github.com/seajs/seajs/issues/242

SeaJS与RequireJS的异同:https://github.com/seajs/seajs/issues/277

 

CommonJS规范:

出发点:实现模块化,让JS代码支持到处运行;

在规范中:

1. 一个文件就是一个模块,拥有单独的作用域;

2. 普通方式定义的变量,对象,函数都属于该模块内;

3. 通过require()来加载模块;

4. 通过exports和module.exports来暴露模块中的内容;

参考链接:https://www.cnblogs.com/littlebirdlbw/p/5670633.html

 

转载于:https://www.cnblogs.com/Neilisme/p/10897799.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AMD(Asynchronous Module Definition)和 CMDCommon Module Definition)是两种常见的JavaScript模块化规范,而CommonJS则是另一种常见的JavaScript模块化规范AMDCMD都是异步加载JavaScript模块的规范,可以在页面加载完毕后再异步加载JavaScript模块。这样可以加快页面的加载速度,提高用户体验。 AMD规范是由RequireJS推广和实现的,它的特点是定义模块时采用的是函数式的语法。AMD模块通过define()函数定义,模块的依赖通过数组参数来定义: ``` //定义模块 define(['module1', 'module2'], function(module1, module2) { //模块代码 }); ``` CMD规范是由SeaJS推广和实现的,它的特点是定义模块时采用的是对象式的语法。CMD模块通过define()函数定义,模块的依赖通过函数参数来定义: ``` //定义模块 define(function(require, exports, module) { //引入依赖模块 var module1 = require('module1'); var module2 = require('module2'); //模块代码 }); ``` CommonJS规范则是由Node.js推广和实现的,它的特点是采用同步加载JavaScript模块的方式。CommonJS模块通过module.exports和require()函数来定义和引入模块: ``` //定义模块 module.exports = { //模块代码 }; //引入模块 var module1 = require('module1'); ``` 总的来说,AMDCMD主要用于浏览器端的JavaScript模块化开发,而CommonJS主要用于服务器端的JavaScript模块化开发。在实际开发中,可以根据自己的需求选择合适的模块化规范

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值