原理
CMD(Common Module Definition,即通用模块定义) 规范是同步的,其提供了模块定义和按需加载模块。
该规范明确了模块的基本书写格式和基本交互规则。
用法
define(factory);
在CMD规范中,一个模块就是一个文件
注:这里的的define是一个全局函数,用来定义模块,这里的factory参数既可以是函数又可以是字符串或对象。
特点
CND通过sea.js实现,对于依赖的模块,CMD是延迟执行,推崇依赖就近
// CMD
define(function(require, exports, module) {
var a = require('./a')
a.doSomething()
// 此处略去 100 行
var b = require('./b') // 依赖可以就近书写
b.doSomething()
// ...
})