下面为大家讲解一下require.js和sea.js的区别.纯属个人意见,不喜勿喷.

首先原理上的区别

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的区别的理解,希望大家可以增加漏点,订正错点.不喜勿喷,谢谢.

require.js和sea.js的区别的更多相关文章

  1. require.js与sea.js的区别

    hi,感谢各位读者能够阅读我的文章. 下面为大家讲解一下require.js和sea.js的区别.纯属个人意见,不喜勿喷. 首先原理上的区别 sea.js遵循CMD规范.书写方式类似node.js的书 ...

  2. jquery.js与sea.js综合使用

    jquery.js与sea.js综合使用   目录 模块定义 define id dependencies factory exports require require.async require. ...

  3. 前端模块化 、包管理器、AMD、 CMD、 require.js 、sea.js

    问题由来,为什么要前端模块化管理: 假设我们有个组件名为Acomponent.js, 是架构封装的,里面依赖另一个公司公用库common.js: 那我们引入Acomponent.js的时候,怎么知道要 ...

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

    为什么要模块化:当今,网站以不再是一个简单的页面,JavaScript也不再是做一些简单的脚本验证,随着WEB.20时代到来,前端工程师面临的必将是越来越庞大的JavaScript代码,越来越复杂的内 ...

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

    知识点总结: Sea.js的使用:define.export.seajs.use.require等方法:   参考:http://seajs.org/docs/ Sea.js与require.js的区 ...

  6. sea.js与require.js的区别

    随着ES6标准的module出台渐渐会退出历史舞台 首先原理上的区别 sea.js遵循CMD规范.书写方式类似node.js的书写模板代码.依赖的自动加载,配置的简洁清晰.说白了就是懒加载. requ ...

  7. 记录:sea.js和require.js配置 与 性能对比

    最近有点忙,很久无写博客,记录一下之前的配置require.js和sea.js的配置.(有误有望提出 require.js 文件目录 /app(项目使用js) /lib(require.js jq存放 ...

  8. sea.js 入门

    上个月学了 require.js 现在顺便来学学 sea.js. 对比下这两种的区别,看自己喜欢哪个,就在接下来的项目中去使用它吧. seajs中的所有 JavaScript 模块都遵循 CMD 模块 ...

  9. Sea.Js的运行原理(转)

    1.CMD(Common Module Definition)规范 Sea.js采用了和Node相似的CMD规范,使用require.exports和module来组织模块.但Sea.js比起Node ...

随机推荐

  1. LOCAL_SHARED_LIBRARIES 与 LOCAL_LDLIBS,LOCAL_LDFLAGS的区别

    LOCAL_LDLIBS :链接的库不产生依赖关系,一般用于不需要重新编译的库,如库不存在,则会报错找不到.且貌似只能链接那些存在于系统目录下本模块需要连接的库.如果某一个库既有动态库又有静态库,那么 ...

  2. Python - json和simplejson比较(转)

    From:https://stackoverflow.com/questions/712791/what-are-the-differences-between-json-and-simplejson ...

  3. 003android初级篇之【转】Android开发中颜色的定义方法

    正好用到颜色的定义,但脑子里没有记住具体,转载一篇加强印象 1.使用Color类的常量,如: int color = Color.BLUE; // 创建一个蓝色 是使用Android提供的颜色 int ...

  4. php+redis秒杀

    啥都不说了,看代码 前台: 包括开始和结束的秒杀时间,倒计时插件,统一看一遍再去写代码,思路会更清晰. js文件引入一个.min.js和一个插件js(在下面,自己复制吧) // JavaScript ...

  5. web安全漏洞防护

    Password type input with autocomplete enabled The autocomplete attribute works with the following &l ...

  6. Java语言如何进行异常处理,关键字:throws、throw、try、catch、finally分别如何使用?

    先上代码再进行分析 public class Test { public static void main(String[] args) { try{ int i = 100 / 0; System. ...

  7. Python如何利用多核处理器

    Python中,如果想使程序充分利用多核处理器,有以下几个方案: l 使用threading模块,然后将程序运行在IronPython或Jython之上. l 使用Python自带的multiproc ...

  8. idea Plugin "Maven Integration Extension" was not loaded: required plugin "Maven Integration" is disabled

    由于自己运行了eclipse maven及idea maven 同时操作,可能产生了以上错误.既: idea  Plugin "Maven Integration Extension&quo ...

  9. 转:: 刺鸟:用python来开发webgame服务端(1)

    来源:http://ciniao.me/article.php?id=9 --------------- 刺鸟原创文章,转载请注明出处    在开始之前,先简单描述一下项目的特点:我要实现的是一个mm ...

  10. DIV背景图片

    .bigY{    position:absolute;     width:95px;     height:93px;     visibility:visible;     right: 277 ...