sea.js与require.js的区别

Posted 不了无明

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sea.js与require.js的区别相关的知识,希望对你有一定的参考价值。

随着ES6标准的module出台渐渐会退出历史舞台

首先原理上的区别

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

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

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

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

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

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

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

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

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

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

 

书写上面的区别..

都是用define来定义一个模板.通过require,exports,module三个参数来调动函数.

基本上他们的用法是大同小异的.不过要两点较大的区别是需要大家去注意的:

1)sea.js使用模块时用方法seajs.use,而require.js直接用require关键字

2)sea.js只使用一个模块时可以只传入一个字符串,但是require传入的必须是一个数组.

以上是关于sea.js与require.js的区别的主要内容,如果未能解决你的问题,请参考以下文章

sea.js与require.js的区别

AMD与CMD区别

JS利用 Sea.js 实现模块化:拖拽缩放及范围限制

JavaScript模块化编程之require.js与sea.js

Sea.js & Require.js

exports与module.exports的区别,export与export.defult区别