CMD与AMD的区别

最明显的区别就是在模块定义时对依赖的处理不同

1、AMD推崇依赖前置,在定义模块的时候就要声明其依赖的模块

2、CMD推崇就近依赖,只有在用到某个模块的时候再去require

同样都是异步加载模块,AMD在加载模块完成后就会执行该模块,所有模块都加载完成后会进入require的回调状态,

执行主逻辑,这样的效果就是依赖模块的执行顺序和书写顺序不一定一致,看网络速度,那个先下载,那个先执行,但是主逻辑

一定在所有依赖加载完成后才执行

CMD加载完某个依赖模块后不执行,只是下载而已,在所有模块加载完成后进入主逻辑,遇到require语句的时候才执行对应

的模块,这样模块的执行顺序和书写顺序是完全一致的