CommonJS 与 Node.js 的关系?

发布于 2022-09-12 03:23:18 字数 267 浏览 37 评论 0

先有 CommonJS 还是 Node.js ?

是 Node.js 成就了 CommonJS ?

CommonJS 规范是 Node.js 作者创建的吗?

为什么大家谈到 CommonJS 就会涉及 Node.js,只是因为 Node.js 目前应用广泛?

虽然知道 CommonJS 规范的使用,但对于二者的关系不是很了解,一直很纳闷,去网上搜索过,基本上都在讲规范的东西,有点答非所问的意思,没找到我想要的答案。

跪求一个清晰的解释,谢谢。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

变身佩奇 2022-09-19 03:23:18

1、先有 CommonJS。

2、可以这么说,毕竟两者时代很接近,也无法证实假如没有 Node.js,CommonJS 还能不能广泛流行。

3、不是,两个作者认识,但并没有一起共事过。

4、也不能说只是吧。毕竟现存的模块化解决方案就那么几个:ES Module、AMD、CMD、CommonJS,以及大杂烩 UMD,你也绕不过去它啊。

5、下面细讲。


细节讲述请参考:《编程时间简史系列》JavaScript 模块化的历史进程

无边思念无边月 2022-09-19 03:23:18

commonJS是node的模块化规范,由于node出来的时候ES的标准模块规范还没有出来,node又需要使用模块化开发来规范代码模块。
你的疑问
1. 先有 CommonJS 还是 Node.js ?
先有的规范,node.js 借鉴规范实现了自己的模块化系统
2.CommonJS 规范是 Node.js 作者创建的吗?
不是,node.js 是借鉴了这一规范
最新版的node.js已经推荐采用标准的EM模块规范了,大家谈到 CommonJS 就会涉及 Node.js是因为初期几乎大部分的node模块都是基于CommonJS 规范的

风蛊 2022-09-19 03:23:18

就各位的回答,总结一下:

  1. CommonJS 是一种规范,Node.js 只是 CommonJS 的其中一个实现,仅此而已。(自然是先有规范,再有实现啦)
  2. Node.js 被广泛使用,让更多地人知道了 CommonJS 规范。所以说 Node.js 成就了 CommonJS ,应该没毛病。
  3. 为什么需要 CommonJS?

我们都知道,在ES6之前,原生 JavaScript 并没有内置的模块系统。JavaScript 诞生之初只是作为一个脚本语言来做一些很简单的表单校验等工作。但前端的发展,尤其是 Ajax 诞生以后,JavaScript 能做的事情越来越多,自然业务会变得越来越复杂。如果再像以前那样使用一个一个的 <script> 标签引入 JavaScript 代码,会造成越来越难维护,全局变量污染等一系列的问题。所以我们需要模块化来解决这些乱七八糟的东西。

每个文件就是一个模块,有自己的作用域,在该文件定义的变量、函数等都是私有的,对其他文件不可见,我们只管对外输出所需要的接口即可。

如果有不妥,欢迎指出。

假情假意假温柔 2022-09-19 03:23:18

你可以看看这篇提问,里面有解答你的问题

https://segmentfault.com/q/1010000022987120

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文