当前位置: 首页 > 面试题库 >

说一下Commonjs、AMD和CMD的区别?

郭阳曜
2023-03-14
本文向大家介绍说一下Commonjs、AMD和CMD的区别?相关面试题,主要包含被问及说一下Commonjs、AMD和CMD的区别?时的应答技巧和注意事项,需要的朋友参考一下

参考回答:

一个模块是能实现特定功能的文件,有了模块就可以方便的使用别人的代码,想要什么功能就能加载什么模块。

Commonjs:开始于服务器端的模块化,同步定义的模块化,每个模块都是一个单独的作用域,模块输出,modules.exports,模块加载require()引入模块。

AMD:中文名异步模块定义的意思。

requireJS实现了AMD规范,主要用于解决下述两个问题。

1.多个文件有依赖关系,被依赖的文件需要早于依赖它的文件加载到浏览器

 

2.加载的时候浏览器会停止页面渲染,加载文件越多,页面失去响应的时间越长。

语法:requireJS定义了一个函数define,它是全局变量,用来定义模块。

requireJS的例子:

//定义模块

define(['dependency'], function(){
var name = 'Byron';
function printName(){
console.log(name);
}
return {
printName: printName
};
});

//加载模块

require(['myModule'], function (my){
my.printName();
}

requirejs定义了一个函数define,它是全局变量,用来定义模块:

define(id?dependencies?,factory)

在页面上使用模块加载函数:

require([dependencies],factory);

总结AMD规范:require()函数在加载依赖函数的时候是异步加载的,这样浏览器不会失去响应,它指定的回调函数,只有前面的模块加载成功,才会去执行。 因为网页在加载js的时候会停止渲染,因此我们可以通过异步的方式去加载js,而如果需要依赖某些,也是异步去依赖,依赖后再执行某些方法。

 类似资料:
  • 本文向大家介绍说说你对AMD和Commonjs的理解相关面试题,主要包含被问及说说你对AMD和Commonjs的理解时的应答技巧和注意事项,需要的朋友参考一下 CommonJS是服务器端模块的规范,Node.js采用了这个规范。CommonJS规范加载模块是同步的,也就是说,只有加载完成,才能执行后面的操作。AMD规范则是非同步加载模块,允许指定回调函数。 AMD推荐的风格通过返回一个对象做为模块

  • 问题内容: 即使阅读了很多书,我仍然对 CommonJS,AMD 和 RequireJS 感到非常困惑。 我知道 CommonJS (以前称为 ServerJS )是用于在浏览器之外使用该语言时定义一些 JavaScript 规范(即模块)的组。 CommonJS 模块规范具有一些实现,例如 Node.js 或 RingoJS ,对吗? CommonJS , 异步模块定义 (AMD)和 Requi

  • 本文向大家介绍说一下C++和C的区别 ?相关面试题,主要包含被问及说一下C++和C的区别 ?时的应答技巧和注意事项,需要的朋友参考一下 设计思想上: C++是面向对象的语言,而C是面向过程的结构化编程语言 语法上: C++具有封装、继承和多态三种特性 C++相比C,增加多许多类型安全的功能,比如强制类型转换、 C++支持范式编程,比如模板类、函数模板等

  • Introduction§ 1 CommonJS defines a module format. Unfortunately, it was defined without giving browsers equal footing to other JavaScript environments. Because of that, there are CommonJS spec proposa

  • 本文向大家介绍请说明一下http和https的区别相关面试题,主要包含被问及请说明一下http和https的区别时的应答技巧和注意事项,需要的朋友参考一下 考察点:http协议 参考回答; https协议要申请证书到ca,需要一定经济成本;2) http是明文传输,https是加密的安全传输;3) 连接的端口不一样,http是80,https是443;4)http连接很简单,没有状态;https是

  • 问题内容: 我想知道这些摘要之间的区别是什么。 和 两者对我来说都可以正常工作,但不能确定它们背后的目的是什么。 问题答案: 考虑第一个片段,它是CommonJS样式的: 这些调用是同步调用:返回时,它将返回您请求的模块。CommonJS 调用是同步的。有一种支持异步形式的建议,但据我所知,它尚未超出建议级别。Node.js 曾经被删除过。有一个实现它的包。使用此程序包看起来很像使用AMD样式模块