ECMAScript模块模式

JavaScript 模块化主题的关系地图,串联 ESM、CommonJS、浏览器与 Node.js 运行时。

#type / synthesis #status / growing #resource / javascript #resource / ecmascript

[!info] related notes

ECMAScript模块模式

这篇笔记负责串联模块化主题,不再在总览页重复写所有语法细节。

模块化到底在解决什么

当代码开始拆成多个文件时,会立刻遇到:

  • 变量污染
  • 依赖关系不透明
  • 加载顺序难管理
  • 宿主环境解析规则不同

模块化的本质,就是把“拆文件”和“依赖关系”变成明确规则。

这组主题的四层结构

1. 语言层:ESM

2. 历史层:CommonJS / AMD / UMD

  • commonjs-amd-umd
  • 主要用来理解旧代码、Node.js 历史和浏览器兼容演进

3. 宿主加载层

4. 项目层

推荐阅读顺序

  1. es6-module-import-export
  2. commonjs-amd-umd
  3. html-js-scripts
  4. javascript-in-browser
  5. javascript-in-nodejs

一句话对比

  • 学现代开发,先抓 ESM
  • 学旧项目与历史演进,补 CommonJS / AMD / UMD
  • 学实际加载与运行边界,回到浏览器和 Node.js 笔记
创建于 2025/1/1 更新于 2026/5/27