[摘抄] 3.AMD规范与CommonJS规范的兼容性
2024-09-07 04:49:38
3. AMD规范与CommonJS规范的兼容性
- CommonJS规范加载模块是同步的,也就是说,只有加载完成,才能执行后面的操作。
- AMD规范则是非同步加载模块,允许指定回调函数。
- 由于Node.js主要用于服务器编程,模块文件一般已经存在于本地硬盘,所以加载起来比较快,不用考虑非同步加载的方式,所以CommonJS规范比较适用。
- 如果是浏览器环境,要从服务器端加载模块,这时就必须采用非同步模式,因此浏览器一般适用AMD规范。
AMD规范适用define方法定义模块,下面就是一个例子
define(["package/lib"],function(lib){
function foo(){
lib.log('hello world');
}
return { foo };
});
AMD规范允许输出的模块兼容CommonJS规范,这时define方法需要写成这样
define(function(require,exports,mould){
var someModule = require('someModule');
var anotherModule = require('anotherModule');
someModule.doTehAwesome();
anotherModule.doMoarAwesome();
exports.asplode = function(){
someModule.doTehAwesome();
anotherModule.doMoarAwesome();
};
})
最新文章
- CSS 布局
- C#中获取当前时间:System.DateTime.Now.ToString()用法
- 使用NuGet管理项目类库引用
- 微博转发关系采集,可拓展关键字采集,评论采集(Java版)
- 第二章	Odoo的安装与部署
- [ACM_水题] ZOJ 3714 [Java Beans 环中连续m个数最大值]
- Oracle 单行函数
- iOS - UIActionSheet
- X64相关文章
- PHP 反射机制Reflection
- Java.lang.RuntimeException: Unable to instantiate activity ComponentInfo
- Cocos2d-x v3.3 lua绑定c++类方法总结
- Xcode如何添加字体库--
- hdu4956 Poor Hanamichi
- C#将Excel数据表导入SQL数据库的两种方法(转)
- 深度解剖dubbo源码
- JavaMail在Windows平台下正常发送邮件,部署到Linux后则发送失败
- Linux 下建立 SSH 隧道做 Socket 代理
- POJ1860:Currency Exchange(BF)
- SqlServer中的merge操作(转载)
热门文章
- BZOJ4241:历史研究(回滚莫队)
- 【Linux】netstat命令
- ReplaceGoogleCDN 真的好使
- 从三数之和看如何优化算法,递推-->;递推加二分查找-->;递推加滑尺
- 动态内存管理:malloc/free/new/delete/brk/mmap
- Python中字符串匹配函数startswith()函数
- 神经机器翻译(seq2seq RNN)实现详解
- 去除批次效应 sva
- Unable to resolve service for type 'Microsoft.AspNetCore.ResponseCompression.IResponseCompressionProvider' while attempting to activate 'Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMid
- kubernetes node节点失效 调度