ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
[TOC] # 简介 模块是Node.js应用程序的基本组成部分。 Node.js中,文件和模块一一对应,存在4种模块。 <br> # Node.js 模块类型 在 Node.js 中,模块主要可以分为以下几种类型: * 核心模块:包含在 Node.js 源码中,被编译进 Node.js 可执行二进制文件 JavaScript 模块,也叫 native 模块,比如常用的 http, fs 等等 * C/C++ 模块,也叫 built-in 模块,一般我们不直接调用,而是在 native module 中调用,然后我们再 require * native 模块,比如我们在 Node.js 中常用的 buffer,fs,os 等 native 模块,其底层都有调用 built-in 模块。 * 第三方模块:非 Node.js 源码自带的模块都可以统称第三方模块,比如 express,webpack 等等。 * JavaScript 模块,这是最常见的,我们开发的时候一般都写的是 JavaScript 模块 * JSON 模块,这个很简单,就是一个 JSON 文件 * C/C++ 扩展模块,使用 C/C++ 编写,编译之后后缀名为 .node # 加载方式 1. 文件模块缓存 2. 原生模块 3. 文件 ![](https://efe.baidu.com/blog/nodejs-module-analyze/process2.png) # 模块加载原理的关键:require require方法接受以下参数 * http、fs、path等,原生模块 * ./mod,相对路径的文件模块 * /path/mod,绝对路径的文件模块 * mod,非原生模块的文件模块