diligent-rookie / seajs

SeaJs模块化学习

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SeaJs与require.js的区别

原理上的区别:

sea.js遵循CMD规范.书写方式类似node.js的书写模板代码.依赖的自动加载,配置的简洁清晰.说白了就是懒加载.

require.js遵循AMD规范,CMD和AMD基本相同,最大的区别是就CMD是懒加载,AMD是预加载.

简单来说,就是sea.js属于懒加载,require.js属于预加载.

在这里,顺便扩展一下预加载和懒加载的优缺点

预加载:当第一次访问时将所有的文件加载出来

优点:第一次访问完成以后, 再次访问的速度会很快

缺点:第一次加载页面要等待很久.

懒加载:使用的时候才会加载对应的文件.

优点:第一次访问速度相对快点

缺点:再访问其他新的模块时速度会变慢.

使用上的区别:

都是用define来定义一个模板.通过require,exports,module三个参数来调动函数. 但sea.js使用模块时用方法seajs.use,而require.js直接用require关键字 sea.js只使用一个模块时可以只传入一个字符串,但是require传入的必须是一个数组.

About

SeaJs模块化学习


Languages

Language:JavaScript 92.5%Language:CSS 7.1%Language:HTML 0.3%