2 yishuixs yishuixs 于 2016.01.15 04:38 提问

关于CommonJS和AMD的一点疑惑

1、AMD规范是否是CommonJS的真子集?
2、CommonJS是同步的还是异步的,还是两者都支持?
3、RequireJS当用CommonJS格式书写define()方法时,module参数有何作用?exports呢?module.exprots与exprots又有何分别?可否混用?
4、RequireJS的define()方法写成define( function( require, exports, module) { ... })时,匿名函数里的require是什么?如果在匿名函数里面写var a = require('a'),这个require()方法是匿名函数的参数require吗?
5、RequireJS不能在同步情况下通过require(Str)从顶层加载模块到底该如何理解,头大。。。?
6、RequireJS能否依赖前置与依赖就近二合一,比如将必要的依赖都放在函数顶端,在成百上千行时突然需要增加一个依赖时采用就近依赖方式加入依赖,而非返回函数顶部加入这个依赖?

2个回答

CSDNXIAON
CSDNXIAON   2016.01.15 04:40

AMD vs. CommonJS?
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

devmiao
devmiao   Ds   Rxr 2016.01.19 04:35
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
前端面试之模块化-2、AMD规范和CommonJS规范
原文链接:http://www.ruanyifeng.com/blog/2012/10/asynchronous_module_definition.html 先想一想,为什么模块很重要? 因为有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块。 但是,这样做有一个前提,那就是大家必须以同样的方式编写模块,否则你有你的写法,我有我的写法,岂不是乱了套!考虑到Javasc
CommonJS,AMD,CMD区别
zccst转载  学得比较晕,再次看commonjs,amd, cmd时好像还是没完全弄清楚,今天再整理一下:  commonjs是用在服务器端的,同步的,如nodejs  amd, cmd是用在浏览器端的,异步的,如requirejs和seajs  其中,amd先提出,cmd是根据commonjs和amd基础上提出的。  为什么晕呢?是因为没用,或用得太少。光看看文章是不行的。
【新手入门 最精炼总结】AMD/CMD/CommonJs到底是什么?它们有什么区别?
知道JS有模块化开发的说法,也偶尔听过requireJs,AMD,CMD等等名字,甚至使用node的时候,还用过require之类的方法,但是对这些一直没有一个明确的认识和概念。想必这就是许多新手刚接触这方面知识时的一个普遍状态。 其实仅仅做一些基础的活儿的时候,并不需要对它们有太多的了解,知道怎么用就行了,管他是什么理念,是什么实现呢。于是人就懒下来了。 终于有一天,下定决心,一定要把这一块
浅谈AMD跟CommonJS的区别
很多刚入门的web前端工程师,都接触过所为的Javascript的模块化,对AMD跟CommonJS都有一定的认知。但却不知道两者的本质区别!在这里简单的解释一下两者的区别跟共同点。 共同点:两者都是为了实现模块化编程而出现的,对于大型项目,参与人数多,代码逻辑复杂,是最适合使用模块化的思想来完成整个项目的。同时采用这种思想也很便于对整个项目进行管控。 区别:CommonJS是适用于服务器端的
AMD、CMD和CommonJS规范
AMD 与 CMD
彻底弄懂CommonJS和AMD/CMD!
JS中的模块规范(CommonJS,AMD,CMD),如果你听过js模块化这个东西,那么你就应该听过或CommonJS或AMD甚至是CMD这些规范咯,我也听过,但之前也真的是听听而已。 现在就看看吧,这些规范到底是啥东西,干嘛的。   一、CommonJS  CommonJS就是为JS的表现来制定规范,NodeJS是这种规范的实现,webpack 也是以CommonJS的形式来书写。因为
CommonJS、AMD、CMD、NodeJs、RequireJS到底有什么联系?
JS中的模块规范(CommonJS,AMD,CMD),如果你听过js模块化这个东西,那么你就应该听过或CommonJS或AMD甚至是CMD这些规范,本文包括这三个规范的来源及对应的产物的原理。   一、CommonJS 1.一开始大家都认为JS不强大,没什么用,官方定义的API只能构建基于浏览器的应用程序,CommonJS就按耐不住了,CommonJS API定义很多普通应用程序(主
CommonJS,AMD,CMD,ES6模块规范
模块规范主要进行模块加载。 微信项目中我使用的是ES6规范(很好用加载模块(一个单独的文件也算是一个模块,一个模块就是和一个单独作用域,可以是说都是private)) 提到ES6规范,前不久使用CommonJS模块规范由此做一个对比。然后在谈论AMD,CMD的优点。 1.ES6Module和CommonJS ES6Module 通过import 命令来加载
AMD规范和CommonJS规范比较
目录 概述 AMD规范与CommonJS规范的兼容性 参考链接 概述 CommonJS是服务器端模块的规范,Node.js采用了这个规范。 根据CommonJS规范,一个单独的文件就是一个模块。加载模块使用require方法,该方法读取一个文件并执行,最后返回文件内部的exports对象。下面就是一个简单的模块文件example.js。 c
javascript模块化之CommonJS、AMD、CMD、UMD、ES6
这是一篇关于js模块化编程的总结记录 javascript模块化之CommonJS、AMD、CMD、UMD、ES6