初识AMD和CMD模块化

本文介绍了两种JavaScript模块化的规范——AMD和CMD,并对比了它们之间的主要区别。AMD规范由RequireJS提出,支持异步加载模块;CMD规范由SeaJS提出,采用同步方式加载模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天发现了阮一峰大牛的博客,收藏一下http://www.ruanyifeng.com/blog/,里边有好多文章值得读哦~~~~~

AMD(Asynchronus Module Definition)异步模块定义

语法:define(id ? , dependents ? , factory);

AMD 是 RequireJS 在推广过程中对模块定义的规范化产出。

AMD规范  https://github.com/amdjs/amdjs-api/wiki/AMD


cmd(Common Module Definition)模块定义

语法:一般是 define(factory)

CMD 是 SeaJS 在推广过程中对模块定义的规范化产出。


seaJS

    官网 http://seajs.org/docs/
    sea.js 核心特征:
        1. 遵循CMD规范,与NodeJS般的书写模块代码。
        2. 依赖自动加载,配置清晰简洁。
    兼容 Chrome 3+,Firefox 2+,Safari 3.2+,Opera 10+,IE 5.5+。

requireJS

官网 http://requirejs.org/

API  https://requirejs.org/docs/api.html/    



两者的区别:

AMD是异步加载的,而CMD是同步加载的

例如:

我写了一个math.js

define(function(){
    var add = function(a,b){
        return a+b;
    };
    return {
        add : add
    }
});


用amd就是:
require(['math'],function(){
    console.log(math.add(1+1));
});

用cmd就是:
var math = require('math');
math.add(1+1);




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值