https://juejin.cn/post/6844904030905303054

Node.js 的出现,让 JavaScript 脱离了浏览器的束缚,进入了广阔的服务端开发领域。而 Node.js 对 **CommonJS 模块化规范**的引入,则更是让 JavaScript成为了一门真正能够适应大型工程的语言。

官网介绍

Node.js 有些模块会被编译成二进制。 这些模块别的地方有更详细的描述。 核心模块定义在 Node.js 源代码的 lib/ 目录下。 require() 总是会优先加载核心模块。 例如,require('http') 始终返回内置的 HTTP 模块,即使有同名文件。

模块引用 require
模块定义 exports
模块标识 传递require()方法的参数

nodejs模块类型

内置模块/核心模块/native模块, http、fs、os

C/C++模块

第三方模块, 例如express、webpack