如何理解CommonJS模块加载的复杂性和细节?

2026-04-09 05:230阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2630个文字,预计阅读时间需要11分钟。

如何理解CommonJS模块加载的复杂性和细节?

CommonJS这个英文单词,相信大家都很熟悉,它通常指的是一种JavaScript模块化规范。而common knowledge意为常识,这两个词组合在一起,确实给人一种类似常识的感觉。所以,可以认为CommonJS在某种程度上也具有类似常识的特性,大家都能理解其含义。

叨叨一会CommonJS

Common这个英文单词的意思,相信大家都认识,我记得有一个词组common knowledge是常识的意思,那么CommonJS是不是也是类似于常识性的,大家都理解的意思呢?很明显不是,这个常识一点都不常识。我最初认为commonJS是一个开源的JS库,就是那种非常方便用的库,里面都是一些常用的前端方法,然而我错得离谱,CommonJS不仅不是一个库,还是一个看不见摸不着的东西,他只是一个规范!就像校纪校规一样,用来规范JS编程,束缚住前端们。就和Promise一样是一个规范,虽然有许多实现这些规范的开源库,但是这个规范也是可以依靠我们的JS能力实现的。

CommonJs规范

那么CommonJS规范了些什么呢?要解释这个规范,就要从JS的特性说起了。JS是一种直译式脚本语言,也就是一边编译一边运行,所以没有模块的概念。因此CommonJS是为了完善JS在这方面的缺失而存在的一种规范。

CommonJS定义了两个主要概念:

  1. require函数,用于导入模块
  2. module.exports变量,用于导出模块

然而这两个关键字,浏览器都不支持,所以我认为这是为什么浏览器不支持CommonJS的原因。

阅读全文

本文共计2630个文字,预计阅读时间需要11分钟。

如何理解CommonJS模块加载的复杂性和细节?

CommonJS这个英文单词,相信大家都很熟悉,它通常指的是一种JavaScript模块化规范。而common knowledge意为常识,这两个词组合在一起,确实给人一种类似常识的感觉。所以,可以认为CommonJS在某种程度上也具有类似常识的特性,大家都能理解其含义。

叨叨一会CommonJS

Common这个英文单词的意思,相信大家都认识,我记得有一个词组common knowledge是常识的意思,那么CommonJS是不是也是类似于常识性的,大家都理解的意思呢?很明显不是,这个常识一点都不常识。我最初认为commonJS是一个开源的JS库,就是那种非常方便用的库,里面都是一些常用的前端方法,然而我错得离谱,CommonJS不仅不是一个库,还是一个看不见摸不着的东西,他只是一个规范!就像校纪校规一样,用来规范JS编程,束缚住前端们。就和Promise一样是一个规范,虽然有许多实现这些规范的开源库,但是这个规范也是可以依靠我们的JS能力实现的。

CommonJs规范

那么CommonJS规范了些什么呢?要解释这个规范,就要从JS的特性说起了。JS是一种直译式脚本语言,也就是一边编译一边运行,所以没有模块的概念。因此CommonJS是为了完善JS在这方面的缺失而存在的一种规范。

CommonJS定义了两个主要概念:

  1. require函数,用于导入模块
  2. module.exports变量,用于导出模块

然而这两个关键字,浏览器都不支持,所以我认为这是为什么浏览器不支持CommonJS的原因。

阅读全文