RequireJS和seaJS的区别与联系联系:都是模块加载器,倡导模块化开发理念,核心价值是让 JavaScript 的模块化开发变得简单自然。

             RequireJS(除了是模块加载器,还是文件加载器) seaJS
遵循的规范不同 遵循 AMD(异步模块定义)规范,预执行,相对来讲解析模块时间短,停顿次数少。也就是RequireJS会先尽早地执行(依赖)模块, 相当于所有的require都被提前了, 而且模块执行的顺序也不一定100%按照代码中出现的顺序。 遵循 CMD (通用模块定义)规范,可以像 Node.js 一般书写模块代码,可以说是浏览器端的node.js懒执行,解析模块时间长,停顿次数多,但是,执行模块的顺序也是严格按照模块在代码中出现(require)的顺序
插件机制 RequireJS 采取的是在源码中预留接口的形式,插件类型比较单一 Sea.js 采取的是通用事件机制,具有丰富的可扩展接口,插件类型更丰富
定位  想成为浏览器端的模块加载器,同时也想成为 Rhino / Node 等环境的模块加载器  则专注于 Web 浏览器端,同时通过 Node 扩展的方式可以很方便跑在 Node 环境中
推广理念 RequireJS 在尝试让第三方类库修改自身来支持 RequireJS,目前只有少数社区采纳 Sea.js 不强推,采用自主封装的方式来“海纳百川”,目前已有较成熟的封装策略
 对开发调试的支持 RequireJS 无这方面的明显支持。

Sea.js 非常关注代码的开发调试,有 nocache、debug 等用于调试的插件

 官方文档以及其他  文档更更丰富,基本属于拿来就能用的DEMO。没有把CSS作为模块的一部分来看。维护和使用的人相对比较多。  需要自己读文档研究折腾。
  如果说RequireJS 是 Prototype 类库的话  Sea.js 致力于成为 jQuery 类库,Sea.js 可运行在 Mobile 端

RequireJS和seaJS的区别与联系的更多相关文章

  1. LABjs、RequireJS、SeaJS 哪个最好用?为什么?

    感谢玉伯在知乎的奉献,下面全文转载:http://www.zhihu.com/question/20342350/answer/14828786 LABjs 的核心是 LAB(Loading and ...

  2. LABjs、RequireJS、SeaJS 哪个最好用?为什么?- 玉伯的回答

    LABjs 的核心是 LAB(Loading and Blocking):Loading 指异步并行加载,Blocking 是指同步等待执行.LABjs 通过优雅的语法(script 和 wait)实 ...

  3. requirejs和seajs使用感受

    这几天看了下前端模块化的知识,主要是requirejs和seajs相关的知识,还未看es6的模块化知识. 由于目前项目组内的开始推广使用vue,并且开始简单的封装组件,但发现组件js的使用方式依然是原 ...

  4. RequireJS 与 SeaJS 的异同

    相同之处 RequireJS 和 SeaJS 都是模块加载器,倡导的是一种模块化开发理念,核心价值是让 JavaScript 的模块化开发变得更简单自然. 不同之处 两者的区别如下: 定位有差异.Re ...

  5. RequireJS与SeaJS模块化加载示例

    web应用越变的庞大,模块化越显得重要,尤其Nodejs的流行,Javascript不限用于浏览器,还用于后台或其他场景时,没有Class,没有 Package的Javascript语言变得难以管理, ...

  6. 从Java的角度理解前端框架,nodejs,reactjs,angularjs,requirejs,seajs

    [前端神秘的面纱] 对后端开发来说,前端是神秘的, 眼花缭乱的技术,繁多的框架, 如果你还停留在前端等于只用jquery做开发,那么你out了, 本文从Java的角度简述下目前前端流行的一些框架. 水 ...

  7. RequireJs 与 SeaJs的相同之处与区别

    相同之处: RequireJS 和 Sea.js 都是模块加载器,倡导模块化开发理念,核心价值是让 JavaScript 的模块化开发变得简单自然. 不同之处: 定位有差异.RequireJS 想成为 ...

  8. RequireJS 和 SeaJS

    RequireJS SeaJS CMD规范 CommonJS的规范: 根据CommonJS规范,一个单独的文件就是一个模块.加载模块使用require方法,该方法读取一个文件并执行,最后返回文件内部的 ...

  9. 模块化以及requirejs和seajs

    我们用模块化的思想进行网页的编写是为了更好的管理我们的项目 模块与模块之间是独立存在的,每个模块可以独立的完成一个子功能. 模块化所涉及的规范commonjs,AMD,CMD,UMD 其中的commo ...

随机推荐

  1. spring boot给http添加正向代理

    http://blog.csdn.net/jaune161/article/details/44198599http://46aae4d1e2371e4aa769798941cef698.devpro ...

  2. WORD 粘贴代码 不检查语法

  3. js 刷新窗口

    在js  方法里面 1.window.opener.location.reload()     刷新父窗口 2.window.location.reload()        该方法强迫浏览器刷新当前 ...

  4. ExtJS Grid导出excel文件

    ExtJS Grid导出excel文件, 需下载POI:链接:http://pan.baidu.com/s/1i3lkPhF 密码:rqbg 1.将Grid表格数据连同表格列名传到后台 2.后台导出e ...

  5. Python 修饰符

    def hello(fn):    def wrapper():        print "hello"        fn()        print "goodb ...

  6. Objective-C( Foundation框架 一 NSFileManager)

    NSFileManager 用来管理文件系统的 它可以用于常见的文件,文件夹操作(拷贝,剪切,创建) NSFileManager使用了单例模式(Singleton) 使用defaultManager可 ...

  7. Java8之——简洁优雅的Lambda表达式

    Java8发布之后,Lambda表达式,Stream等等之类的字眼边慢慢出现在我们字眼.就像是Java7出现了之后,大家看到了“钻石语法”,看到了try-with-resource等等.面对这些新东西 ...

  8. Python函数式编程学习笔记

    High order function map(f,Iterable),将f依次作用在Iterable的每个元素然后返回一个Iterator,再用list(map(f,Iterable))进行转换得到 ...

  9. 《数据结构》2.3单链表(single linked list)

    //单链表节点的定义 typedef struct node { datatype data; struct node *next; }LNode,*LinkList; //LNode是节点类型,Li ...

  10. Bootstrap<基础一> CSS 概览

    HTML 5 文档类型(Doctype) Bootstrap 使用了一些 HTML5 元素和 CSS 属性.为了让这些正常工作,您需要使用 HTML5 文档类型(Doctype). 因此,请在使用 B ...