[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"site-config":3,"approved-friend-links":32,"tool-slug-nodejs":33},{"code":4,"msg":5,"data":6},0,"操作成功",{"police_number":7,"login_password_enabled":8,"copyright":9,"wechat_pay_api_key":7,"admin_login_wechat_enabled":8,"wechat_pay_public_key_id":10,"member_price":11,"police_link":7,"payment_enabled":12,"contact_email":13,"wechat_pay_serial_no":14,"member_discount":15,"wechat_pay_mch_id":16,"alipay_return_url":7,"alipay_private_key":17,"admin_login_password_enabled":8,"wechat_id":18,"wechat_pay_app_id":19,"owner_name":20,"site_domain":21,"site_desc":22,"login_wechat_qr_enabled":8,"alipay_public_key":23,"wechat_pay_private_key":24,"site_name":25,"icp_number":26,"alipay_notify_url":7,"wechat_pay_public_key":27,"payment_alipay_enabled":8,"icp_link":28,"wechat_pay_api_v3_key":29,"login_email_enabled":12,"alipay_app_id":30,"member_enabled":12,"wechat_pay_notify_url":31,"admin_login_email_enabled":12},"","false","© 2026 makexu.com 版权所有","PUB_KEY_ID_0117465997412026060900182334001401","168","true","370663537@qq.com","38039BC91B0D03B6C7DDDBAEAB823D1201FDA789","0.70","1746599741","MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCJKx4pNlM6dJN10cqHxscvHhyBOu7KY6+23rmnIs1GtIvd8bu09I1mCyzWUDM26VxLz2l55I44gmK+\u002FnIhxqzsl0znvbZh5r3fj8CYbQRcDM7L9I7hOr9k5vWc\u002FAQy2jb9AmNuV3xa8F1bVkve00nN2U6Oap2aoNdDhSsSA1NeC0WwtVLaq2wkqqKBY\u002FUrfNLR3xr0iP0YRQy+paY6jta4Tz88KHE+x3ZRfxben+tejAsYVpjVTpcfDKzzKSTqDcY1vbPjApCsN66kKmEwD4HmPRNphksLiIOqyWc+zaJE39JM620Br6NuxvMiR0dmbncE3UaztvvXUSL0kDKnYKKhAgMBAAECggEAfO9U7VyZuehsVyfaPIkE6xmWBO7UiGr7pKiAmIbOSdQwgNqoiU0lbQhIsnsh6qXqdvJXs7pE\u002F5tirWu8MJ9w6Z11Yq4c7FbqIjIgzbSd\u002F+l6gbIiYWrM4O6sT2wLtvWimBgQ0HPGxF2h6otTV4VC98cyEe1x12EgMFOewy1cRY7QP68VBaGpOS6twrCJtLw9PvOPfeY6Fkur65ESAp1N7ELgJRHE0vtQljY01EYM30BwesDIZpUaGqmepzRhFKOkfiQDtgXM3GZOUXJHWR06j2T9PYcmDEFRkPPtLABI42UJPwtIb75kiXjv6uysob0vo746WtdIGRkuQNRjyyh\u002FsQKBgQDLxUCWAexSrrbnr5UITlMwocY0Fuo1U9pjABfB5MnrWoQPWsJgAOgiXt\u002FsNRtdZDMpo7fTku2rhDueiUHWY7aLUbvvvzbuBLfNXIX7wy2qNEPMmRpn9KkzLeB0MYwMvTXgT+zD\u002Fr6lIO3RYQE9JYaojBMuykDu+2Y9C9yRGTGjbwKBgQCsU6gc8cODXKHSCovZO8M6fbOpSoc6GezozvMvD\u002Fg1sOwNwovZ4VJwIFyGTyssbjjEp\u002F5B5B\u002FDg+HGygaPubuzTyc0\u002FfZ5uxgDfMjzExMhJiol0JdgSX+m3pC\u002Fc189pcvkSAKXQrGApXN3i95OrGOj\u002FiRr1AuGH8sYk0+vWYjS7wKBgGSEAL\u002F+YtzGYmMXMaTPPioXIvY+93kmy+tZ+F4kxZXbKJmKY6eHyvppYnvaFo2TB8nagKtVJvgcWmxxuJBQz5MZ1mMFJ8txeFlM8qqmNLho36jlPSlafrxIPRgT+Mmv7AuiYWCtIM3D2IwYFcxb3nj13+CM1EsOp\u002FglCcBpdRrxAoGAFLL3voJLubumtFQP+Ef1a1EuA2ewVopGqrAxBbYlWk2mDQERS1qFTHKWqotX5D5ZE0YahE+igRmWRQp\u002FP0RQB3m6e+MFeBnBCKo0eP4RjinHZkNn62jorGKPgG+bQQxpMUJ1DTY1m\u002F5DoFhsm4aZcVlVhp4xxCqNeqY3LBjVFoECgYEAmOxK+rzVnF83wfTE65lMXqN8UWTOWSDsbiGzx6YSg02X67MfDk2asD\u002FyciUiCCE25lRxwm0SuaetOTMbZO5mD8ZZEq7GQSt9L+r1LFjkB\u002FwmX6tbAJI3rpAWpD0ntcASCN8QfaWh3liFMaSjkn1OmhCCrV\u002FbS+aOJ1wZwJK4jeg=","dajiang8070","wxebc91c29d4bd3fe8","码客徐","www.makexu.com","分享优质开发工具、项目实战、编程教程、AI开发、源码项目和技术资源，帮助程序员快速成长，让开发更高效。","MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApUboIRwnBzMLC+hFy+b1Fhsy4xacSBoMfasdqMicCrK70hj+mCrUqJ2hGUn2gClNvMGyO+90p9UNhrDGCzpact8CCZCs6t7vQCrnD4PEmEKl62XcCwngrPEKP5gP6sSWDL\u002Fm8cHabF\u002FVn9HlayaS0nePd89XRgSi8gd0oh5qyUbt2s27zY3fpIsd66naVwMLn7CBwDLFKDINnFeRu\u002FsAN3SKYcwl7T1yhpPb99yoSCKA+yYaPaT85UKLOqESk6kUabPsUDDmpkZn6nHHXUQa3\u002FSJUSnn7a\u002F+YOZsSveZg4ei1AMSmXTZH\u002FnB9MuHgyZ0pnI2Bw3LR1YpNcyUoKtZfQIDAQAB","-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDnmf8oIN9HbAUi\nuaNZwKB\u002F3pDPtavwOLpF6PpKJsLts3fOeXHUwbNJzcjrxTe5DKKMNOk5t3cFXPtb\nBH18pEFNi1zHWkN5aZ1BrViCwYpo7FRucie7Dc9sGFeaRZMsRH+piHUkCh5I3QJM\nYCXIbsiTeavWiRCSLsmcQ2KfStSw8NO9+Tio6dTQb7lmSCBEK51zlge8tgvEyoWm\nsXCAlAz0GgzxTrIWo4saJ2ooIkX0ljvmPyTxyZ2+nXzI8RYKA1DZ38yoy4Pa+xXv\nxOa0VV5kidl8s+6F8rk7133boU+44gmKOE8lK5+a3FBkrI1D3rSxFGnQ0WIYC\u002F\u002F0\nB+TRUVFTAgMBAAECggEBAIAN+bKqWkoXQ8+rbNJXW2bYHKF8BZFRDE1TP\u002FB39heP\nv5J+O54za3pHOeyCowjCH63+I2YyNrDUdHYiyW99Mk453BatpdkfuD90JRhHAsx4\nv0ZCAA3A2QsfenBmP7WeOif2ty4yGgSXjonEL5\u002FfAS\u002FpekWoi20ISZkI+SKyMV+S\n+2+aoInmX9KcK1E\u002FM8vA6\u002FaNUOYmGM5hk1342ezQ131\u002FlwrksN4i1cuUdGaXJ8SI\nlmXTavDC1ypQKXtyigorOCW2Y\u002FAzNVjL04Pb\u002FiSsB0yjagSHU69veSLJTf+XCGFt\ne3YfScQDhLblq142RnKVfMQvePaAI3dQ1tOqgUrHuaECgYEA+DzzcmiyxOSicu37\n+Nvwc5d8DETyxBDqF\u002F1GJ6bZLwflZvBOx67K\u002FNlT9Z3L2yNGjrL0w0oQJnOWH0hb\nyW7piXXqnQ2\u002FNkNLzks0goY6zjyI3FHMvDEvdxiyz4PD6H+JeMUSANLnGztR9aFh\nAO1mgtH+TF95mUenytEYcTde4JUCgYEA7tfgcWm8SsctkahZOwbClWPDy69wxUh5\nlLDgwj1+XJ7Pa5MaACUvQV8E6LFA7HHZZCIf2JGOgzXW0UEym46Z6v2OiXOasLKN\nBwtnFytKbzOK7nkkr+U6ympW1eZXJN5A4MZRLQl2gKA8teZL8Gz+F2i0+uVlR0cb\nK7G\u002FdfAS6EcCgYEAoc8hJR9n\u002F\u002F3EgkPsbe\u002F3kXFZ86lx0SnxXYfDlg8lHIn6F5pm\nz7R5Lk3\u002Fc2fTPNmGoXe3IiEB2\u002F6WCXgiFHBOnEKXlp4iWJ2PKT5OURJr\u002FIjq8SoE\n2Vr6RJh93dRW\u002FBM+KdHThWP0LwUAzKrPz0nv+zAkoeXOHoLdtc+MLihYmO0CgYEA\nrp8glmqy4o0rMOI\u002FkttHaoeNQB8duO9bDK4hNYJWH4twpPrguJh3Kzk4UpQ9nmFC\nimY0mFcbNa0oSMd9I6QnvlnxW2ctAuEYIL1ietsIybKKcf4aJ4vV5uXGZQ7KScdA\n8dWsxdu0SyhcGrWscbSONTk1kHYlDO7c255SF\u002F0VJcMCgYB0v6C3bNIPkbAlvFlo\nBTgccv3dBUa2Zo\u002FOJa8xGW\u002FVz3RuL6qTjFRVEYJILVmrSR2fT1w44EET2fGW6cb4\nb5a\u002FDGz9scZwUBwhhMleBPUu2LL6\u002FFkuP2amFFr5uRK8GwbZ5TvrtpNgdBoMhvPb\n1+z709LIwIzFbq5WLW3OEao7MA==\n-----END PRIVATE KEY-----","码客徐的小栈","皖ICP备2024065487号-6","-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAymOTDu1kxxydfrQEgKbe\nne0+i+Bq55TY+BWkkev\u002Ffy9NtSS0Fpbz4g7rscQg6W+4CmYz4VSD6GrC3pXwjRhK\nUGZDHhUnUV9Hf6SLWepxfh8SihdqDbBu6mRKRwyQw7RBYhxLZV+udagchCtSBut1\niQ6H+ozn+3jVUdX\u002F2rGuXBt1WIWbFomPj1MIQuolSORM85nr8cqWyimgECm70imE\nTlRR0s9WkksWoF0WwFdoWWAjxo4LVNdf9\u002FEySIu5I5NuYslwWjb+T87D\u002FNkIoI92\ne1jjAOsPgl5oJ10wLjNjbOMy9+\u002FrzDDz6yAyuKMKj\u002Flhu2D35Cx8ZJDC798vTbZS\nfQIDAQAB\n-----END PUBLIC KEY-----","https:\u002F\u002Fbeian.miit.gov.cn\u002F","K8mX2pQ7vN4rT9yL6cD1wH5sJ3eF0aZB","9021000164659589","https:\u002F\u002Fwww.makexu.com\u002Fapi\u002Forder\u002Fnotify\u002Fwechat",[],{"tool":34,"articles":79,"firstDocHtml":101,"related":102},{"id":35,"name":36,"slug":37,"categoryId":38,"category":39,"categoryColor":40,"imageUrl":41,"summary":42,"sortNum":43,"status":44,"viewCount":45,"downloadCount":46,"favoriteCount":47,"likeCount":47,"tutorialCount":48,"videoCount":48,"articles":49,"videos":53,"versions":59,"tags":74},"5","Node.js","nodejs","2066778763594342401","开发环境","#3b82f6","https:\u002F\u002Fthomas-coding-pub.oss-cn-hangzhou.aliyuncs.com\u002Fimage\u002F6a463eb8b03c753d225c6430.png","JavaScript运行环境，前端项目开发必备，内置npm包管理器。",5,1,"480","89","0",null,[50],{"id":51,"toolId":48,"title":52,"content":48,"sortNum":4,"status":44,"createTime":48,"updateTime":48},"2079556471928139777","Node.js 下载安装与配置教程",[54],{"id":55,"toolId":35,"title":56,"videoUrl":57,"platform":58,"coverImage":48,"description":7,"sortNum":4,"status":44},"2080480605004640257","Node.js下载安装配置视频教程","【【6分钟】Node.js下载安装使用教程 轻松搞定nodejs环境变量和国内镜像npm加速配置】 https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002FBV1Qhga6qEQA\u002F?share_source=copy_web&vd_source=611c5c18fb4b550a4d24d80364d15e98","bilibili",[60],{"id":61,"toolId":35,"versionName":62,"sortNum":4,"status":44,"downloads":63},"2079549766771159042","Node.js 24",[64,70],{"id":65,"versionId":61,"platform":66,"fileName":67,"diskType":68,"downloadUrl":69,"extractCode":7,"sortNum":4},"2079550010669936642","Windows","node-v24.18.0-win-x64.zip","夸克网盘","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F1ea5f8a2246a",{"id":71,"versionId":61,"platform":66,"fileName":72,"diskType":68,"downloadUrl":73,"extractCode":7,"sortNum":44},"2079550010992898050","node-v24.18.0-x64.msi","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F713cce9c0478",[75],{"id":76,"name":77,"color":78,"sortNum":4,"status":44},"2066782281264795649","前端开发","#f97316",[80],{"id":51,"docNo":81,"categoryId":82,"categoryName":83,"title":52,"slug":48,"summary":7,"contentMd":84,"seoTitle":7,"seoKeywords":7,"seoDescription":7,"author":7,"coverFileId":48,"coverUrl":48,"visibility":4,"visibilityDesc":85,"allowDownload":86,"wordCount":4,"readingTime":4,"viewCount":4,"sortNum":4,"status":44,"publishTime":87,"createTime":87,"updateTime":88,"tags":89,"attachments":90,"prev":91,"next":94,"businessBindings":97},"DC20260721CAXQUM","2073338810713542659","工具教程","## 1. Node.js 简介\nNode.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境，让 JavaScript 可以脱离浏览器在服务器端运行。它采用事件驱动、非阻塞 I\u002FO 模型，轻量且高效。\n\n## 2. 下载 Node.js\n### 官方下载地址\n访问 Node.js 官网：[https:\u002F\u002Fnodejs.org\u002F](https:\u002F\u002Fnodejs.org\u002F)\n\n提供两个版本：\n\n| 版本 | 说明 |\n| --- | --- |\n| **LTS（长期支持版）** | 稳定性高，适合生产环境，推荐大多数用户使用 |\n| **Current（最新版）** | 包含最新特性，适合尝鲜，稳定性略低 |\n\n\n> 💡 **推荐下载 LTS 版本**，以获得更好的稳定性和长期支持。\n>\n\n### 下载文件类型说明\n| 文件格式 | 适用系统 | 说明 |\n| --- | --- | --- |\n| `.msi` | Windows | 安装包版，自动配置环境变量，推荐 |\n| `.zip` | Windows | 压缩包版，免安装，需手动配置 |\n| `.pkg` | macOS | 安装包版，自动配置环境变量 |\n| `.tar.gz` | macOS\u002FLinux | 源码压缩包，需编译安装 |\n\n\n## 3. Windows 系统安装\n### 方式一：MSI 安装包（推荐）\n1. 下载 `.msi` 格式的安装包（选择对应系统位数：x64 \u002F x86）\n2. 双击运行安装程序，点击 `Next`\n3. 勾选 `I accept the terms in the License Agreement`，点击 `Next`\n4. 选择安装路径（默认 `C:\\Program Files\\nodejs\\`）\n5. 点击 `Next` 直到安装完成\n\n> ✅ 安装过程中会自动将 Node.js 添加到系统环境变量 PATH 中，无需手动配置。\n>\n\n### 方式二：ZIP 压缩包（免安装绿色版）\n适用于需要 **多版本共存**、**便携式部署** 或 **无管理员权限** 的场景。\n\n#### 步骤 1：解压到目标目录\n将 ZIP 包解压到你想要的目录，例如：\n\n```plain\nD:\\nodejs\\\n```\n\n解压后的目录结构示例：\n\n```plain\nD:\\nodejs\\\n├── node.exe          # Node.js 可执行文件\n├── npm.cmd           # npm 命令行工具\n├── npx.cmd           # npx 命令行工具\n├── node_modules\\     # 内置模块\n└── ...\n```\n\n#### 步骤 2：配置环境变量（重要！）\n**① 添加 Node.js 到 PATH**\n\n+ 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」\n+ 在「系统变量」或「用户变量」中找到 `Path`，点击「编辑」\n+ 点击「新建」，添加 Node.js 解压目录：\n\n```plain\nD:\\nodejs\\\n```\n\n+ 点击「确定」保存\n\n**② 配置 npm 全局安装路径（可选但推荐）**\n\n在 `D:\\nodejs\\` 目录下新建两个文件夹：\n\n```plain\nD:\\nodejs\\node_global\nD:\\nodejs\\node_cache\n```\n\n打开 CMD 或 PowerShell，执行：\n\n```bash\nnpm config set prefix \"D:\\nodejs\\node_global\"\nnpm config set cache \"D:\\nodejs\\node_cache\"\n```\n\n**③ 将全局路径添加到 PATH**\n\n再次进入「环境变量」设置，在 `Path` 中添加：\n\n```plain\nD:\\nodejs\\node_global\n```\n\n**④ 配置 NODE_PATH（可选）**\n\n在「系统变量」中新建：\n\n```plain\n变量名：NODE_PATH\n变量值：D:\\nodejs\\node_global\\node_modules\n```\n\n#### 步骤 3：验证安装\n重新打开 CMD 终端：\n\n```bash\nnode -v\n# 输出示例：v20.15.0\n\nnpm -v\n# 输出示例：10.8.1\n```\n\n#### ZIP 方式的优缺点\n| 优点 | 缺点 |\n| --- | --- |\n| ✅ 免安装，解压即用 | ❌ 需手动配置环境变量 |\n| ✅ 方便多版本共存（解压到不同目录） | ❌ 不会自动创建开始菜单快捷方式 |\n| ✅ 无需管理员权限 | ❌ 不会自动关联 `.js` 文件 |\n| ✅ 可放在 U 盘便携使用 |  |\n\n\n## 4. macOS 系统安装\n### 方式一：官方安装包\n1. 下载 `.pkg` 格式的安装包\n2. 双击运行，按照提示完成安装\n3. 安装程序会自动配置环境变量\n\n### 方式二：使用 Homebrew（推荐）\n```bash\n# 安装 LTS 版本\nbrew install node@20\n\n# 或安装最新版\nbrew install node\n\n# 安装后链接\nbrew link --overwrite node@20\n```\n\n### 方式三：使用 nvm（Node 版本管理）\n```bash\n# 安装 nvm\ncurl -o- https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.39.7\u002Finstall.sh | bash\n\n# 重启终端后安装 Node\nnvm install --lts\nnvm use --lts\n```\n\n---\n\n## 5. Linux 系统安装\n### 方式一：使用 NodeSource 仓库（推荐）\n**Ubuntu \u002F Debian：**\n\n```bash\n# 添加 NodeSource 仓库\ncurl -fsSL https:\u002F\u002Fdeb.nodesource.com\u002Fsetup_20.x | sudo -E bash -\n\n# 安装 Node.js\nsudo apt-get install -y nodejs\n```\n\n**CentOS \u002F RHEL \u002F Fedora：**\n\n```bash\n# 添加 NodeSource 仓库\ncurl -fsSL https:\u002F\u002Frpm.nodesource.com\u002Fsetup_20.x | sudo bash -\n\n# 安装 Node.js\nsudo yum install -y nodejs\n```\n\n### 方式二：使用 nvm\n```bash\n# 安装 nvm\ncurl -o- https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.39.7\u002Finstall.sh | bash\n\n# 重新加载配置\nsource ~\u002F.bashrc\n\n# 安装 LTS 版本\nnvm install --lts\nnvm use --lts\n```\n\n### 方式三：使用包管理器\n```bash\nsudo apt update\nsudo apt install nodejs npm  # Ubuntu\u002FDebian\n```\n\n> ⚠️ 包管理器中的版本可能较旧，不推荐生产环境使用。\n>\n\n---\n\n## 6. 环境变量配置（通用详解）\n### Windows（MSI 安装版）\nMSI 安装包会自动配置 PATH，无需手动操作。如需修改 npm 全局路径：\n\n```bash\nnpm config set prefix \"C:\\Program Files\\nodejs\\node_global\"\nnpm config set cache \"C:\\Program Files\\nodejs\\node_cache\"\n```\n\n### Windows（ZIP 版）\n按照 [3. 方式二](#方式二zip-压缩包免安装绿色版) 中的步骤配置。\n\n### macOS \u002F Linux\n编辑 shell 配置文件（`~\u002F.bashrc`、`~\u002F.zshrc` 或 `~\u002F.profile`）：\n\n```bash\n# 设置 npm 全局安装路径\nexport NPM_PREFIX=~\u002F.npm-global\nmkdir -p $NPM_PREFIX\nnpm config set prefix $NPM_PREFIX\n\n# 添加到 PATH\nexport PATH=\"$NPM_PREFIX\u002Fbin:$PATH\"\n\n# 加载配置\nsource ~\u002F.bashrc  # 或 source ~\u002F.zshrc\n```\n\n---\n\n## 7. 验证安装\n打开终端（命令行），执行以下命令：\n\n```bash\n# 查看 Node.js 版本\nnode -v\n# 输出示例：v20.15.0\n\n# 查看 npm 版本\nnpm -v\n# 输出示例：10.8.1\n\n# 查看 npx 版本\nnpx -v\n# 输出示例：10.8.1\n```\n\n### 测试 Hello World\n创建 `test.js` 文件：\n\n```javascript\nconsole.log('Hello, Node.js!');\n```\n\n运行：\n\n```bash\nnode test.js\n# 输出：Hello, Node.js!\n```\n\n---\n\n## 8. npm 配置与加速\n### 查看当前配置\n```bash\nnpm config list\n```\n\n### 更换为国内镜像源（推荐）\n**淘宝 npm 镜像：**\n\n```bash\nnpm config set registry https:\u002F\u002Fregistry.npmmirror.com\nnpm config get registry  # 验证\n```\n\n**腾讯云镜像：**\n\n```bash\nnpm config set registry https:\u002F\u002Fmirrors.cloud.tencent.com\u002Fnpm\u002F\n```\n\n### 使用 cnpm（可选）\n```bash\nnpm install -g cnpm --registry=https:\u002F\u002Fregistry.npmmirror.com\ncnpm install express\n```\n\n### 配置代理（如需）\n```bash\nnpm config set proxy http:\u002F\u002Fproxy.company.com:8080\nnpm config set https-proxy http:\u002F\u002Fproxy.company.com:8080\n\n# 取消代理\nnpm config delete proxy\nnpm config delete https-proxy\n```\n\n---\n\n## 9. 常见问题\n### Q1：`node -v` 显示 \"command not found\"\n+ **Windows（ZIP 版）**：检查环境变量 PATH 是否包含 Node.js 解压目录，需重启终端\n+ **Windows（MSI 版）**：检查是否以管理员权限安装\n+ **macOS\u002FLinux**：检查是否完成安装，或重启终端\n\n### Q2：ZIP 版安装后 npm 命令无法使用\n确保 `npm.cmd` 和 `node.exe` 在同一目录下，且该目录已添加到 PATH 中。\n\n### Q3：权限错误（EACCES）\n**macOS\u002FLinux 解决：**\n\n```bash\nsudo chown -R $(whoami) ~\u002F.npm\n```\n\n**Windows 解决：**  \n以管理员身份运行终端。\n\n### Q4：npm install 速度慢\n更换国内镜像源（见第 8 节）。\n\n### Q5：如何切换 Node 版本？\n使用 **nvm**（Node Version Manager）：\n\n```bash\nnvm install 18.17.0\nnvm use 18.17.0\nnvm list\nnvm alias default 20.15.0\n```\n\n### Q6：ZIP 包如何卸载？\n直接删除解压出来的文件夹，再清除环境变量中对应的 PATH 条目即可，无残留注册表项。\n\n\n\n## 📚 参考资源\n+ [Node.js 官网](https:\u002F\u002Fnodejs.org\u002F)\n+ [Node.js 中文文档](https:\u002F\u002Fnodejs.org\u002Fzh-cn\u002Fdocs\u002F)\n+ [npm 官方文档](https:\u002F\u002Fdocs.npmjs.com\u002F)\n+ [淘宝 NPM 镜像](https:\u002F\u002Fnpmmirror.com\u002F)\n\n\n","公开",false,"2026-07-21 21:17:54","2026-07-21 21:18:48",[],[],{"id":92,"title":93,"slug":48},"2079422978921345025","Maven下载安装与配置教程",{"id":95,"title":96,"slug":48},"2079561358590095361","Git 下载安装与配置教程",[98],{"businessType":99,"businessId":35,"businessName":36,"bindScene":100},"TOOL","GENERAL","\u003Ch2 id=\"1.-node.js-%E7%AE%80%E4%BB%8B\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#1.-node.js-%E7%AE%80%E4%BB%8B\" aria-hidden=\"true\">\u003C\u002Fa> 1. Node.js 简介\u003C\u002Fh2>\n\u003Cp>Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境，让 JavaScript 可以脱离浏览器在服务器端运行。它采用事件驱动、非阻塞 I\u002FO 模型，轻量且高效。\u003C\u002Fp>\n\u003Ch2 id=\"2.-%E4%B8%8B%E8%BD%BD-node.js\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#2.-%E4%B8%8B%E8%BD%BD-node.js\" aria-hidden=\"true\">\u003C\u002Fa> 2. 下载 Node.js\u003C\u002Fh2>\n\u003Ch3 id=\"%E5%AE%98%E6%96%B9%E4%B8%8B%E8%BD%BD%E5%9C%B0%E5%9D%80\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E5%AE%98%E6%96%B9%E4%B8%8B%E8%BD%BD%E5%9C%B0%E5%9D%80\" aria-hidden=\"true\">\u003C\u002Fa> 官方下载地址\u003C\u002Fh3>\n\u003Cp>访问 Node.js 官网：\u003Ca href=\"https:\u002F\u002Fnodejs.org\u002F\">https:\u002F\u002Fnodejs.org\u002F\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>提供两个版本：\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>版本\u003C\u002Fth>\n\u003Cth>说明\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>LTS（长期支持版）\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>稳定性高，适合生产环境，推荐大多数用户使用\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Current（最新版）\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>包含最新特性，适合尝鲜，稳定性略低\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cblockquote>\n\u003Cp>💡 \u003Cstrong>推荐下载 LTS 版本\u003C\u002Fstrong>，以获得更好的稳定性和长期支持。\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3 id=\"%E4%B8%8B%E8%BD%BD%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%E8%AF%B4%E6%98%8E\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E4%B8%8B%E8%BD%BD%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%E8%AF%B4%E6%98%8E\" aria-hidden=\"true\">\u003C\u002Fa> 下载文件类型说明\u003C\u002Fh3>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>文件格式\u003C\u002Fth>\n\u003Cth>适用系统\u003C\u002Fth>\n\u003Cth>说明\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.msi\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Windows\u003C\u002Ftd>\n\u003Ctd>安装包版，自动配置环境变量，推荐\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.zip\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Windows\u003C\u002Ftd>\n\u003Ctd>压缩包版，免安装，需手动配置\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.pkg\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>macOS\u003C\u002Ftd>\n\u003Ctd>安装包版，自动配置环境变量\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.tar.gz\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>macOS\u002FLinux\u003C\u002Ftd>\n\u003Ctd>源码压缩包，需编译安装\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Ch2 id=\"3.-windows-%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#3.-windows-%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85\" aria-hidden=\"true\">\u003C\u002Fa> 3. Windows 系统安装\u003C\u002Fh2>\n\u003Ch3 id=\"%E6%96%B9%E5%BC%8F%E4%B8%80%EF%BC%9Amsi-%E5%AE%89%E8%A3%85%E5%8C%85%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%96%B9%E5%BC%8F%E4%B8%80%EF%BC%9Amsi-%E5%AE%89%E8%A3%85%E5%8C%85%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 方式一：MSI 安装包（推荐）\u003C\u002Fh3>\n\u003Col>\n\u003Cli>下载 \u003Ccode>.msi\u003C\u002Fcode> 格式的安装包（选择对应系统位数：x64 \u002F x86）\u003C\u002Fli>\n\u003Cli>双击运行安装程序，点击 \u003Ccode>Next\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>勾选 \u003Ccode>I accept the terms in the License Agreement\u003C\u002Fcode>，点击 \u003Ccode>Next\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>选择安装路径（默认 \u003Ccode>C:\\Program Files\\nodejs\\\u003C\u002Fcode>）\u003C\u002Fli>\n\u003Cli>点击 \u003Ccode>Next\u003C\u002Fcode> 直到安装完成\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cblockquote>\n\u003Cp>✅ 安装过程中会自动将 Node.js 添加到系统环境变量 PATH 中，无需手动配置。\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3 id=\"%E6%96%B9%E5%BC%8F%E4%BA%8C%EF%BC%9Azip-%E5%8E%8B%E7%BC%A9%E5%8C%85%EF%BC%88%E5%85%8D%E5%AE%89%E8%A3%85%E7%BB%BF%E8%89%B2%E7%89%88%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%96%B9%E5%BC%8F%E4%BA%8C%EF%BC%9Azip-%E5%8E%8B%E7%BC%A9%E5%8C%85%EF%BC%88%E5%85%8D%E5%AE%89%E8%A3%85%E7%BB%BF%E8%89%B2%E7%89%88%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 方式二：ZIP 压缩包（免安装绿色版）\u003C\u002Fh3>\n\u003Cp>适用于需要 \u003Cstrong>多版本共存\u003C\u002Fstrong>、\u003Cstrong>便携式部署\u003C\u002Fstrong> 或 \u003Cstrong>无管理员权限\u003C\u002Fstrong> 的场景。\u003C\u002Fp>\n\u003Ch4 id=\"%E6%AD%A5%E9%AA%A4-1%EF%BC%9A%E8%A7%A3%E5%8E%8B%E5%88%B0%E7%9B%AE%E6%A0%87%E7%9B%AE%E5%BD%95\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%AD%A5%E9%AA%A4-1%EF%BC%9A%E8%A7%A3%E5%8E%8B%E5%88%B0%E7%9B%AE%E6%A0%87%E7%9B%AE%E5%BD%95\" aria-hidden=\"true\">\u003C\u002Fa> 步骤 1：解压到目标目录\u003C\u002Fh4>\n\u003Cp>将 ZIP 包解压到你想要的目录，例如：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">plain\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"D:\\nodejs\\\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-text\">\u003Cspan class=\"line\">\u003Cspan>D:\\nodejs\\\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cp>解压后的目录结构示例：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">plain\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"D:\\nodejs\\\n├── node.exe          # Node.js 可执行文件\n├── npm.cmd           # npm 命令行工具\n├── npx.cmd           # npx 命令行工具\n├── node_modules\\     # 内置模块\n└── ...\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-text\">\u003Cspan class=\"line\">\u003Cspan>D:\\nodejs\\\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan>├── node.exe          # Node.js 可执行文件\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan>├── npm.cmd           # npm 命令行工具\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan>├── npx.cmd           # npx 命令行工具\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan>├── node_modules\\     # 内置模块\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan>└── ...\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch4 id=\"%E6%AD%A5%E9%AA%A4-2%EF%BC%9A%E9%85%8D%E7%BD%AE%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%EF%BC%88%E9%87%8D%E8%A6%81%EF%BC%81%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%AD%A5%E9%AA%A4-2%EF%BC%9A%E9%85%8D%E7%BD%AE%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%EF%BC%88%E9%87%8D%E8%A6%81%EF%BC%81%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 步骤 2：配置环境变量（重要！）\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>① 添加 Node.js 到 PATH\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>右键「此电脑」→「属性」→「高级系统设置」→「环境变量」\u003C\u002Fli>\n\u003Cli>在「系统变量」或「用户变量」中找到 \u003Ccode>Path\u003C\u002Fcode>，点击「编辑」\u003C\u002Fli>\n\u003Cli>点击「新建」，添加 Node.js 解压目录：\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">plain\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"D:\\nodejs\\\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-text\">\u003Cspan class=\"line\">\u003Cspan>D:\\nodejs\\\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cul>\n\u003Cli>点击「确定」保存\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>② 配置 npm 全局安装路径（可选但推荐）\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>在 \u003Ccode>D:\\nodejs\\\u003C\u002Fcode> 目录下新建两个文件夹：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">plain\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"D:\\nodejs\\node_global\nD:\\nodejs\\node_cache\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-text\">\u003Cspan class=\"line\">\u003Cspan>D:\\nodejs\\node_global\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan>D:\\nodejs\\node_cache\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cp>打开 CMD 或 PowerShell，执行：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"npm config set prefix &quot;D:\\nodejs\\node_global&quot;\nnpm config set cache &quot;D:\\nodejs\\node_cache&quot;\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> prefix\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> \"D:\\nodejs\\node_global\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> cache\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> \"D:\\nodejs\\node_cache\"\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cp>\u003Cstrong>③ 将全局路径添加到 PATH\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>再次进入「环境变量」设置，在 \u003Ccode>Path\u003C\u002Fcode> 中添加：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">plain\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"D:\\nodejs\\node_global\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-text\">\u003Cspan class=\"line\">\u003Cspan>D:\\nodejs\\node_global\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cp>\u003Cstrong>④ 配置 NODE_PATH（可选）\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>在「系统变量」中新建：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">plain\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"变量名：NODE_PATH\n变量值：D:\\nodejs\\node_global\\node_modules\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-text\">\u003Cspan class=\"line\">\u003Cspan>变量名：NODE_PATH\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan>变量值：D:\\nodejs\\node_global\\node_modules\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch4 id=\"%E6%AD%A5%E9%AA%A4-3%EF%BC%9A%E9%AA%8C%E8%AF%81%E5%AE%89%E8%A3%85\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%AD%A5%E9%AA%A4-3%EF%BC%9A%E9%AA%8C%E8%AF%81%E5%AE%89%E8%A3%85\" aria-hidden=\"true\">\u003C\u002Fa> 步骤 3：验证安装\u003C\u002Fh4>\n\u003Cp>重新打开 CMD 终端：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"node -v\n# 输出示例：v20.15.0\n\nnpm -v\n# 输出示例：10.8.1\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">node\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -v\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 输出示例：v20.15.0\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -v\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 输出示例：10.8.1\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch4 id=\"zip-%E6%96%B9%E5%BC%8F%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#zip-%E6%96%B9%E5%BC%8F%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9\" aria-hidden=\"true\">\u003C\u002Fa> ZIP 方式的优缺点\u003C\u002Fh4>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>优点\u003C\u002Fth>\n\u003Cth>缺点\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>✅ 免安装，解压即用\u003C\u002Ftd>\n\u003Ctd>❌ 需手动配置环境变量\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>✅ 方便多版本共存（解压到不同目录）\u003C\u002Ftd>\n\u003Ctd>❌ 不会自动创建开始菜单快捷方式\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>✅ 无需管理员权限\u003C\u002Ftd>\n\u003Ctd>❌ 不会自动关联 \u003Ccode>.js\u003C\u002Fcode> 文件\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>✅ 可放在 U 盘便携使用\u003C\u002Ftd>\n\u003Ctd>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Ch2 id=\"4.-macos-%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#4.-macos-%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85\" aria-hidden=\"true\">\u003C\u002Fa> 4. macOS 系统安装\u003C\u002Fh2>\n\u003Ch3 id=\"%E6%96%B9%E5%BC%8F%E4%B8%80%EF%BC%9A%E5%AE%98%E6%96%B9%E5%AE%89%E8%A3%85%E5%8C%85\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%96%B9%E5%BC%8F%E4%B8%80%EF%BC%9A%E5%AE%98%E6%96%B9%E5%AE%89%E8%A3%85%E5%8C%85\" aria-hidden=\"true\">\u003C\u002Fa> 方式一：官方安装包\u003C\u002Fh3>\n\u003Col>\n\u003Cli>下载 \u003Ccode>.pkg\u003C\u002Fcode> 格式的安装包\u003C\u002Fli>\n\u003Cli>双击运行，按照提示完成安装\u003C\u002Fli>\n\u003Cli>安装程序会自动配置环境变量\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3 id=\"%E6%96%B9%E5%BC%8F%E4%BA%8C%EF%BC%9A%E4%BD%BF%E7%94%A8-homebrew%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%96%B9%E5%BC%8F%E4%BA%8C%EF%BC%9A%E4%BD%BF%E7%94%A8-homebrew%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 方式二：使用 Homebrew（推荐）\u003C\u002Fh3>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"# 安装 LTS 版本\nbrew install node@20\n\n# 或安装最新版\nbrew install node\n\n# 安装后链接\nbrew link --overwrite node@20\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 安装 LTS 版本\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">brew\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> node@20\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 或安装最新版\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">brew\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> node\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 安装后链接\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">brew\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> link\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> --overwrite\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> node@20\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"%E6%96%B9%E5%BC%8F%E4%B8%89%EF%BC%9A%E4%BD%BF%E7%94%A8-nvm%EF%BC%88node-%E7%89%88%E6%9C%AC%E7%AE%A1%E7%90%86%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%96%B9%E5%BC%8F%E4%B8%89%EF%BC%9A%E4%BD%BF%E7%94%A8-nvm%EF%BC%88node-%E7%89%88%E6%9C%AC%E7%AE%A1%E7%90%86%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 方式三：使用 nvm（Node 版本管理）\u003C\u002Fh3>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"# 安装 nvm\ncurl -o- https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.39.7\u002Finstall.sh | bash\n\n# 重启终端后安装 Node\nnvm install --lts\nnvm use --lts\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 安装 nvm\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">curl\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -o-\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.39.7\u002Finstall.sh\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\"> |\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\"> bash\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 重启终端后安装 Node\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">nvm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> --lts\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">nvm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> use\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> --lts\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Chr>\n\u003Ch2 id=\"5.-linux-%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#5.-linux-%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85\" aria-hidden=\"true\">\u003C\u002Fa> 5. Linux 系统安装\u003C\u002Fh2>\n\u003Ch3 id=\"%E6%96%B9%E5%BC%8F%E4%B8%80%EF%BC%9A%E4%BD%BF%E7%94%A8-nodesource-%E4%BB%93%E5%BA%93%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%96%B9%E5%BC%8F%E4%B8%80%EF%BC%9A%E4%BD%BF%E7%94%A8-nodesource-%E4%BB%93%E5%BA%93%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 方式一：使用 NodeSource 仓库（推荐）\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Ubuntu \u002F Debian：\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"# 添加 NodeSource 仓库\ncurl -fsSL https:\u002F\u002Fdeb.nodesource.com\u002Fsetup_20.x | sudo -E bash -\n\n# 安装 Node.js\nsudo apt-get install -y nodejs\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 添加 NodeSource 仓库\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">curl\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -fsSL\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> https:\u002F\u002Fdeb.nodesource.com\u002Fsetup_20.x\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\"> |\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\"> sudo\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -E\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> bash\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> -\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 安装 Node.js\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">sudo\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> apt-get\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -y\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> nodejs\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cp>\u003Cstrong>CentOS \u002F RHEL \u002F Fedora：\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"# 添加 NodeSource 仓库\ncurl -fsSL https:\u002F\u002Frpm.nodesource.com\u002Fsetup_20.x | sudo bash -\n\n# 安装 Node.js\nsudo yum install -y nodejs\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 添加 NodeSource 仓库\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">curl\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -fsSL\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> https:\u002F\u002Frpm.nodesource.com\u002Fsetup_20.x\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\"> |\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\"> sudo\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> bash\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> -\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 安装 Node.js\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">sudo\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> yum\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -y\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> nodejs\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"%E6%96%B9%E5%BC%8F%E4%BA%8C%EF%BC%9A%E4%BD%BF%E7%94%A8-nvm\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%96%B9%E5%BC%8F%E4%BA%8C%EF%BC%9A%E4%BD%BF%E7%94%A8-nvm\" aria-hidden=\"true\">\u003C\u002Fa> 方式二：使用 nvm\u003C\u002Fh3>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"# 安装 nvm\ncurl -o- https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.39.7\u002Finstall.sh | bash\n\n# 重新加载配置\nsource ~\u002F.bashrc\n\n# 安装 LTS 版本\nnvm install --lts\nnvm use --lts\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 安装 nvm\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">curl\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -o-\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.39.7\u002Finstall.sh\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\"> |\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\"> bash\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 重新加载配置\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\">source\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> ~\u002F.bashrc\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 安装 LTS 版本\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">nvm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> --lts\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">nvm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> use\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> --lts\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"%E6%96%B9%E5%BC%8F%E4%B8%89%EF%BC%9A%E4%BD%BF%E7%94%A8%E5%8C%85%E7%AE%A1%E7%90%86%E5%99%A8\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%96%B9%E5%BC%8F%E4%B8%89%EF%BC%9A%E4%BD%BF%E7%94%A8%E5%8C%85%E7%AE%A1%E7%90%86%E5%99%A8\" aria-hidden=\"true\">\u003C\u002Fa> 方式三：使用包管理器\u003C\u002Fh3>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"sudo apt update\nsudo apt install nodejs npm  # Ubuntu\u002FDebian\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">sudo\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> apt\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> update\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">sudo\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> apt\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> nodejs\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\">  # Ubuntu\u002FDebian\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cblockquote>\n\u003Cp>⚠️ 包管理器中的版本可能较旧，不推荐生产环境使用。\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Chr>\n\u003Ch2 id=\"6.-%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E9%85%8D%E7%BD%AE%EF%BC%88%E9%80%9A%E7%94%A8%E8%AF%A6%E8%A7%A3%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#6.-%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E9%85%8D%E7%BD%AE%EF%BC%88%E9%80%9A%E7%94%A8%E8%AF%A6%E8%A7%A3%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 6. 环境变量配置（通用详解）\u003C\u002Fh2>\n\u003Ch3 id=\"windows%EF%BC%88msi-%E5%AE%89%E8%A3%85%E7%89%88%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#windows%EF%BC%88msi-%E5%AE%89%E8%A3%85%E7%89%88%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> Windows（MSI 安装版）\u003C\u002Fh3>\n\u003Cp>MSI 安装包会自动配置 PATH，无需手动操作。如需修改 npm 全局路径：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"npm config set prefix &quot;C:\\Program Files\\nodejs\\node_global&quot;\nnpm config set cache &quot;C:\\Program Files\\nodejs\\node_cache&quot;\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> prefix\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> \"C:\\Program Files\\nodejs\\node_global\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> cache\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> \"C:\\Program Files\\nodejs\\node_cache\"\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"windows%EF%BC%88zip-%E7%89%88%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#windows%EF%BC%88zip-%E7%89%88%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> Windows（ZIP 版）\u003C\u002Fh3>\n\u003Cp>按照 \u003Ca href=\"#%E6%96%B9%E5%BC%8F%E4%BA%8Czip-%E5%8E%8B%E7%BC%A9%E5%8C%85%E5%85%8D%E5%AE%89%E8%A3%85%E7%BB%BF%E8%89%B2%E7%89%88\">3. 方式二\u003C\u002Fa> 中的步骤配置。\u003C\u002Fp>\n\u003Ch3 id=\"macos-%2F-linux\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#macos-%2F-linux\" aria-hidden=\"true\">\u003C\u002Fa> macOS \u002F Linux\u003C\u002Fh3>\n\u003Cp>编辑 shell 配置文件（\u003Ccode>~\u002F.bashrc\u003C\u002Fcode>、\u003Ccode>~\u002F.zshrc\u003C\u002Fcode> 或 \u003Ccode>~\u002F.profile\u003C\u002Fcode>）：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"# 设置 npm 全局安装路径\nexport NPM_PREFIX=~\u002F.npm-global\nmkdir -p $NPM_PREFIX\nnpm config set prefix $NPM_PREFIX\n\n# 添加到 PATH\nexport PATH=&quot;$NPM_PREFIX\u002Fbin:$PATH&quot;\n\n# 加载配置\nsource ~\u002F.bashrc  # 或 source ~\u002F.zshrc\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 设置 npm 全局安装路径\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\">export\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\"> NPM_PREFIX\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\">=~\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">\u002F.npm-global\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">mkdir\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -p\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\"> $NPM_PREFIX\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> prefix\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\"> $NPM_PREFIX\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 添加到 PATH\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\">export\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\"> PATH\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#D73A49;--shiki-dark:#F97583\">=\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\">\"\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">$NPM_PREFIX\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\">\u002Fbin:\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">$PATH\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\">\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 加载配置\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\">source\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> ~\u002F.bashrc\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\">  # 或 source ~\u002F.zshrc\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Chr>\n\u003Ch2 id=\"7.-%E9%AA%8C%E8%AF%81%E5%AE%89%E8%A3%85\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#7.-%E9%AA%8C%E8%AF%81%E5%AE%89%E8%A3%85\" aria-hidden=\"true\">\u003C\u002Fa> 7. 验证安装\u003C\u002Fh2>\n\u003Cp>打开终端（命令行），执行以下命令：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"# 查看 Node.js 版本\nnode -v\n# 输出示例：v20.15.0\n\n# 查看 npm 版本\nnpm -v\n# 输出示例：10.8.1\n\n# 查看 npx 版本\nnpx -v\n# 输出示例：10.8.1\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 查看 Node.js 版本\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">node\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -v\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 输出示例：v20.15.0\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 查看 npm 版本\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -v\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 输出示例：10.8.1\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 查看 npx 版本\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npx\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -v\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 输出示例：10.8.1\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"%E6%B5%8B%E8%AF%95-hello-world\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%B5%8B%E8%AF%95-hello-world\" aria-hidden=\"true\">\u003C\u002Fa> 测试 Hello World\u003C\u002Fh3>\n\u003Cp>创建 \u003Ccode>test.js\u003C\u002Fcode> 文件：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">javascript\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"console.log('Hello, Node.js!');\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-javascript\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">console.\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">log\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">(\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\">'Hello, Node.js!'\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">);\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cp>运行：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"node test.js\n# 输出：Hello, Node.js!\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">node\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> test.js\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 输出：Hello, Node.js!\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Chr>\n\u003Ch2 id=\"8.-npm-%E9%85%8D%E7%BD%AE%E4%B8%8E%E5%8A%A0%E9%80%9F\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#8.-npm-%E9%85%8D%E7%BD%AE%E4%B8%8E%E5%8A%A0%E9%80%9F\" aria-hidden=\"true\">\u003C\u002Fa> 8. npm 配置与加速\u003C\u002Fh2>\n\u003Ch3 id=\"%E6%9F%A5%E7%9C%8B%E5%BD%93%E5%89%8D%E9%85%8D%E7%BD%AE\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%9F%A5%E7%9C%8B%E5%BD%93%E5%89%8D%E9%85%8D%E7%BD%AE\" aria-hidden=\"true\">\u003C\u002Fa> 查看当前配置\u003C\u002Fh3>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"npm config list\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> list\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"%E6%9B%B4%E6%8D%A2%E4%B8%BA%E5%9B%BD%E5%86%85%E9%95%9C%E5%83%8F%E6%BA%90%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E6%9B%B4%E6%8D%A2%E4%B8%BA%E5%9B%BD%E5%86%85%E9%95%9C%E5%83%8F%E6%BA%90%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 更换为国内镜像源（推荐）\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>淘宝 npm 镜像：\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"npm config set registry https:\u002F\u002Fregistry.npmmirror.com\nnpm config get registry  # 验证\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> registry\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> https:\u002F\u002Fregistry.npmmirror.com\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> get\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> registry\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\">  # 验证\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cp>\u003Cstrong>腾讯云镜像：\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"npm config set registry https:\u002F\u002Fmirrors.cloud.tencent.com\u002Fnpm\u002F\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> registry\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> https:\u002F\u002Fmirrors.cloud.tencent.com\u002Fnpm\u002F\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"%E4%BD%BF%E7%94%A8-cnpm%EF%BC%88%E5%8F%AF%E9%80%89%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E4%BD%BF%E7%94%A8-cnpm%EF%BC%88%E5%8F%AF%E9%80%89%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 使用 cnpm（可选）\u003C\u002Fh3>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"npm install -g cnpm --registry=https:\u002F\u002Fregistry.npmmirror.com\ncnpm install express\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -g\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> cnpm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> --registry=https:\u002F\u002Fregistry.npmmirror.com\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">cnpm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> express\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"%E9%85%8D%E7%BD%AE%E4%BB%A3%E7%90%86%EF%BC%88%E5%A6%82%E9%9C%80%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%E9%85%8D%E7%BD%AE%E4%BB%A3%E7%90%86%EF%BC%88%E5%A6%82%E9%9C%80%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> 配置代理（如需）\u003C\u002Fh3>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"npm config set proxy http:\u002F\u002Fproxy.company.com:8080\nnpm config set https-proxy http:\u002F\u002Fproxy.company.com:8080\n\n# 取消代理\nnpm config delete proxy\nnpm config delete https-proxy\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> proxy\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> http:\u002F\u002Fproxy.company.com:8080\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> set\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> https-proxy\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> http:\u002F\u002Fproxy.company.com:8080\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6A737D;--shiki-dark:#6A737D\"># 取消代理\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> delete\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> proxy\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">npm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> config\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> delete\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> https-proxy\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Chr>\n\u003Ch2 id=\"9.-%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#9.-%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98\" aria-hidden=\"true\">\u003C\u002Fa> 9. 常见问题\u003C\u002Fh2>\n\u003Ch3 id=\"q1%EF%BC%9Anode--v-%E6%98%BE%E7%A4%BA-%E2%80%9Ccommand-not-found%E2%80%9D\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#q1%EF%BC%9Anode--v-%E6%98%BE%E7%A4%BA-%E2%80%9Ccommand-not-found%E2%80%9D\" aria-hidden=\"true\">\u003C\u002Fa> Q1：\u003Ccode>node -v\u003C\u002Fcode> 显示 “command not found”\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Windows（ZIP 版）\u003C\u002Fstrong>：检查环境变量 PATH 是否包含 Node.js 解压目录，需重启终端\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Windows（MSI 版）\u003C\u002Fstrong>：检查是否以管理员权限安装\u003C\u002Fli>\n\u003Cli>\u003Cstrong>macOS\u002FLinux\u003C\u002Fstrong>：检查是否完成安装，或重启终端\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"q2%EF%BC%9Azip-%E7%89%88%E5%AE%89%E8%A3%85%E5%90%8E-npm-%E5%91%BD%E4%BB%A4%E6%97%A0%E6%B3%95%E4%BD%BF%E7%94%A8\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#q2%EF%BC%9Azip-%E7%89%88%E5%AE%89%E8%A3%85%E5%90%8E-npm-%E5%91%BD%E4%BB%A4%E6%97%A0%E6%B3%95%E4%BD%BF%E7%94%A8\" aria-hidden=\"true\">\u003C\u002Fa> Q2：ZIP 版安装后 npm 命令无法使用\u003C\u002Fh3>\n\u003Cp>确保 \u003Ccode>npm.cmd\u003C\u002Fcode> 和 \u003Ccode>node.exe\u003C\u002Fcode> 在同一目录下，且该目录已添加到 PATH 中。\u003C\u002Fp>\n\u003Ch3 id=\"q3%EF%BC%9A%E6%9D%83%E9%99%90%E9%94%99%E8%AF%AF%EF%BC%88eacces%EF%BC%89\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#q3%EF%BC%9A%E6%9D%83%E9%99%90%E9%94%99%E8%AF%AF%EF%BC%88eacces%EF%BC%89\" aria-hidden=\"true\">\u003C\u002Fa> Q3：权限错误（EACCES）\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>macOS\u002FLinux 解决：\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"sudo chown -R $(whoami) ~\u002F.npm\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">sudo\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> chown\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> -R\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\"> $(\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">whoami\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#24292E;--shiki-dark:#E1E4E8\">) \u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\">~\u002F.npm\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Cp>\u003Cstrong>Windows 解决：\u003C\u002Fstrong>\u003Cbr>\n以管理员身份运行终端。\u003C\u002Fp>\n\u003Ch3 id=\"q4%EF%BC%9Anpm-install-%E9%80%9F%E5%BA%A6%E6%85%A2\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#q4%EF%BC%9Anpm-install-%E9%80%9F%E5%BA%A6%E6%85%A2\" aria-hidden=\"true\">\u003C\u002Fa> Q4：npm install 速度慢\u003C\u002Fh3>\n\u003Cp>更换国内镜像源（见第 8 节）。\u003C\u002Fp>\n\u003Ch3 id=\"q5%EF%BC%9A%E5%A6%82%E4%BD%95%E5%88%87%E6%8D%A2-node-%E7%89%88%E6%9C%AC%EF%BC%9F\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#q5%EF%BC%9A%E5%A6%82%E4%BD%95%E5%88%87%E6%8D%A2-node-%E7%89%88%E6%9C%AC%EF%BC%9F\" aria-hidden=\"true\">\u003C\u002Fa> Q5：如何切换 Node 版本？\u003C\u002Fh3>\n\u003Cp>使用 \u003Cstrong>nvm\u003C\u002Fstrong>（Node Version Manager）：\u003C\u002Fp>\n\u003Cdiv class=\"code-block-wrapper\">\u003Cdiv class=\"code-block-header\">\u003Cspan class=\"code-lang\">bash\u003C\u002Fspan>\u003Cbutton class=\"code-copy-btn\" data-code=\"nvm install 18.17.0\nnvm use 18.17.0\nnvm list\nnvm alias default 20.15.0\n\" title=\"复制代码\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Crect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"\u002F>\u003C\u002Fsvg>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki shiki-themes github-light github-dark\" style=\"--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e\" tabindex=\"0\">\u003Ccode class=\"language-bash\">\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">nvm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> install\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> 18.17.0\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">nvm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> use\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> 18.17.0\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">nvm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> list\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"--shiki-light:#6F42C1;--shiki-dark:#B392F0\">nvm\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> alias\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#032F62;--shiki-dark:#9ECBFF\"> default\u003C\u002Fspan>\u003Cspan style=\"--shiki-light:#005CC5;--shiki-dark:#79B8FF\"> 20.15.0\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fdiv>\u003Ch3 id=\"q6%EF%BC%9Azip-%E5%8C%85%E5%A6%82%E4%BD%95%E5%8D%B8%E8%BD%BD%EF%BC%9F\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#q6%EF%BC%9Azip-%E5%8C%85%E5%A6%82%E4%BD%95%E5%8D%B8%E8%BD%BD%EF%BC%9F\" aria-hidden=\"true\">\u003C\u002Fa> Q6：ZIP 包如何卸载？\u003C\u002Fh3>\n\u003Cp>直接删除解压出来的文件夹，再清除环境变量中对应的 PATH 条目即可，无残留注册表项。\u003C\u002Fp>\n\u003Ch2 id=\"%F0%9F%93%9A-%E5%8F%82%E8%80%83%E8%B5%84%E6%BA%90\" tabindex=\"-1\">\u003Ca class=\"header-anchor header-anchor\" href=\"#%F0%9F%93%9A-%E5%8F%82%E8%80%83%E8%B5%84%E6%BA%90\" aria-hidden=\"true\">\u003C\u002Fa> 📚 参考资源\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fnodejs.org\u002F\">Node.js 官网\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fnodejs.org\u002Fzh-cn\u002Fdocs\u002F\">Node.js 中文文档\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdocs.npmjs.com\u002F\">npm 官方文档\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fnpmmirror.com\u002F\">淘宝 NPM 镜像\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n",[103,210,241,255],{"id":104,"name":105,"slug":106,"categoryId":38,"category":39,"categoryColor":40,"imageUrl":107,"summary":108,"sortNum":44,"status":44,"viewCount":109,"downloadCount":110,"favoriteCount":47,"likeCount":47,"tutorialCount":48,"videoCount":48,"articles":48,"videos":48,"versions":111,"tags":205},"1","Oracle JDK","oracle-jdk","https:\u002F\u002Fthomas-coding-pub.oss-cn-hangzhou.aliyuncs.com\u002Fimage\u002F7d1a9a87610d4e3090620eb185e7e700.png","JDK（Java Development Kit） 是 Java 开发工具包，包含 Java 编译器、运行环境（JRE）及开发调试工具，用于开发、编译、运行和调试 Java 程序。","877","348",[112,145,165,185],{"id":113,"toolId":104,"versionName":114,"sortNum":44,"status":44,"downloads":115},"2069273158390435842","JDK 8",[116,120,124,130,135,141],{"id":117,"versionId":113,"platform":66,"fileName":118,"diskType":68,"downloadUrl":119,"extractCode":7,"sortNum":4},"2069720852078575617","jdk-8u481-windows-x64.zip","https:\u002F\u002Fpan.quark.cn\u002Fs\u002Fb8debf0651c2",{"id":121,"versionId":113,"platform":66,"fileName":122,"diskType":68,"downloadUrl":123,"extractCode":7,"sortNum":44},"2069720852145684481","jdk-8u481-windows-x64.exe","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F848fc1861ad8",{"id":125,"versionId":113,"platform":126,"fileName":127,"diskType":68,"downloadUrl":128,"extractCode":7,"sortNum":129},"2069720852208599041","macOS","jdk-8u481-macosx-x64.dmg","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F281de7205224",2,{"id":131,"versionId":113,"platform":126,"fileName":132,"diskType":68,"downloadUrl":133,"extractCode":7,"sortNum":134},"2069720852208599042","jdk-8u481-macosx-aarch64.dmg","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F4d090e8be725",3,{"id":136,"versionId":113,"platform":137,"fileName":138,"diskType":68,"downloadUrl":139,"extractCode":7,"sortNum":140},"2069720852275707906","Linux","jdk-8u481-linux-x64.tar.gz","https:\u002F\u002Fpan.quark.cn\u002Fs\u002Fafc240fba2ad",4,{"id":142,"versionId":113,"platform":137,"fileName":143,"diskType":68,"downloadUrl":144,"extractCode":7,"sortNum":43},"2069720852347011074","jdk-8u481-linux-aarch64.tar.gz","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F954e4e72acd5",{"id":146,"toolId":104,"versionName":147,"sortNum":129,"status":44,"downloads":148},"2069273384677330946","JDK 17",[149,153,157,161],{"id":150,"versionId":146,"platform":66,"fileName":151,"diskType":68,"downloadUrl":152,"extractCode":7,"sortNum":4},"2069729404285403138","jdk-17.0.18_windows-x64_bin.zip","https:\u002F\u002Fpan.quark.cn\u002Fs\u002Fc8e88e77b2a6",{"id":154,"versionId":146,"platform":66,"fileName":155,"diskType":68,"downloadUrl":156,"extractCode":7,"sortNum":44},"2069729404348317697","jdk-17.0.18_windows-x64_bin.exe","https:\u002F\u002Fpan.quark.cn\u002Fs\u002Fb5bc4c28b8d7",{"id":158,"versionId":146,"platform":126,"fileName":159,"diskType":68,"downloadUrl":160,"extractCode":7,"sortNum":129},"2069731221467611137","jdk-17.0.18_macos-x64_bin.dmg","https:\u002F\u002Fpan.quark.cn\u002Fs\u002Fb22af933ebf6",{"id":162,"versionId":146,"platform":137,"fileName":163,"diskType":68,"downloadUrl":164,"extractCode":7,"sortNum":134},"2069732385357611009","jdk-17.0.18_linux-x64_bin.tar.gz","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F6fc4c017c46a",{"id":166,"toolId":104,"versionName":167,"sortNum":134,"status":44,"downloads":168},"2069273273016569858","JDK 21",[169,173,177,181],{"id":170,"versionId":166,"platform":66,"fileName":171,"diskType":68,"downloadUrl":172,"extractCode":7,"sortNum":4},"2069734978028879873","jdk-21_windows-x64_bin.zip","https:\u002F\u002Fpan.quark.cn\u002Fs\u002Ff38a577d7197",{"id":174,"versionId":166,"platform":66,"fileName":175,"diskType":68,"downloadUrl":176,"extractCode":7,"sortNum":44},"2069735173202427905","jdk-21_windows-x64_bin.exe","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F56cbc440349b",{"id":178,"versionId":166,"platform":126,"fileName":179,"diskType":68,"downloadUrl":180,"extractCode":7,"sortNum":129},"2069735486776983554","jdk-21_macos-x64_bin.dmg","https:\u002F\u002Fpan.quark.cn\u002Fs\u002Fb568cf34323a",{"id":182,"versionId":166,"platform":137,"fileName":183,"diskType":68,"downloadUrl":184,"extractCode":7,"sortNum":134},"2069735486969921537","jdk-21_linux-x64_bin.tar.gz","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F5f5d9493453f",{"id":186,"toolId":104,"versionName":187,"sortNum":140,"status":44,"downloads":188},"2069732830494900226","JDK 25",[189,193,197,201],{"id":190,"versionId":186,"platform":66,"fileName":191,"diskType":68,"downloadUrl":192,"extractCode":7,"sortNum":4},"2069736045332447233","jdk-25_windows-x64_bin.zip","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F2993063ca32e",{"id":194,"versionId":186,"platform":66,"fileName":195,"diskType":68,"downloadUrl":196,"extractCode":7,"sortNum":44},"2069736045332447234","jdk-25_windows-x64_bin.exe","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F003fbab1a18e",{"id":198,"versionId":186,"platform":126,"fileName":199,"diskType":68,"downloadUrl":200,"extractCode":7,"sortNum":129},"2069736045399556098","jdk-25_macos-x64_bin.dmg","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F1b2d7a500ea9",{"id":202,"versionId":186,"platform":137,"fileName":203,"diskType":68,"downloadUrl":204,"extractCode":7,"sortNum":134},"2069736045462470658","jdk-25_linux-x64_bin.tar.gz","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F2d2be53f4174",[206],{"id":207,"name":208,"color":209,"sortNum":4,"status":44},"2066782261320880129","Java开发","#22c55e",{"id":211,"name":212,"slug":213,"categoryId":38,"category":39,"categoryColor":40,"imageUrl":214,"summary":215,"sortNum":129,"status":44,"viewCount":216,"downloadCount":217,"favoriteCount":47,"likeCount":47,"tutorialCount":48,"videoCount":48,"articles":48,"videos":48,"versions":218,"tags":233},"4","Maven","maven","https:\u002F\u002Fthomas-coding-pub.oss-cn-hangzhou.aliyuncs.com\u002Fimage\u002F744e3f488f4948db96d113033ff7e505.jpeg","Maven 是 Apache 提供的项目管理和构建工具，通过统一的项目结构和依赖管理机制，实现 Java 项目的编译、测试、打包、部署等自动化管理。","638","147",[219],{"id":220,"toolId":211,"versionName":221,"sortNum":4,"status":44,"downloads":222},"2079421047062671362","Maven 3.9.16",[223,227,231],{"id":224,"versionId":220,"platform":66,"fileName":225,"diskType":68,"downloadUrl":226,"extractCode":7,"sortNum":4},"2079421934749364226","apache-maven-3.9.16-bin.zip","https:\u002F\u002Fpan.quark.cn\u002Fs\u002Fe6fc4c5bd5ce",{"id":228,"versionId":220,"platform":126,"fileName":229,"diskType":68,"downloadUrl":230,"extractCode":7,"sortNum":44},"2079422694832746498","apache-maven-3.9.16-bin.tar.gz","https:\u002F\u002Fpan.quark.cn\u002Fs\u002F86f21099cf71",{"id":232,"versionId":220,"platform":137,"fileName":229,"diskType":68,"downloadUrl":230,"extractCode":7,"sortNum":129},"2079422695323480066",[234,235,238],{"id":207,"name":208,"color":209,"sortNum":4,"status":44},{"id":236,"name":237,"color":40,"sortNum":4,"status":44},"2070360509309087746","项目构建",{"id":239,"name":240,"color":40,"sortNum":4,"status":44},"2070360484906627073","依赖管理",{"id":242,"name":243,"slug":244,"categoryId":38,"category":39,"categoryColor":40,"imageUrl":245,"summary":246,"sortNum":247,"status":44,"viewCount":248,"downloadCount":47,"favoriteCount":47,"likeCount":47,"tutorialCount":48,"videoCount":48,"articles":48,"videos":48,"versions":249,"tags":250},"2070346756928663553","Tomcat","tomcat","https:\u002F\u002Fthomas-coding-pub.oss-cn-hangzhou.aliyuncs.com\u002Fimage\u002F6a463e86b03c753d225c642b.png","Tomcat 是 Apache 开源的 Java Web 应用服务器，用于部署、运行和管理 Servlet、JSP 及 Java Web 应用程序。",9,"56",[],[251,252],{"id":207,"name":208,"color":209,"sortNum":4,"status":44},{"id":253,"name":254,"color":40,"sortNum":4,"status":44},"2070357524684304386","Web服务器",{"id":256,"name":257,"slug":258,"categoryId":38,"category":39,"categoryColor":40,"imageUrl":259,"summary":260,"sortNum":261,"status":44,"viewCount":262,"downloadCount":47,"favoriteCount":47,"likeCount":47,"tutorialCount":48,"videoCount":48,"articles":48,"videos":48,"versions":263,"tags":264},"9","Open JDK ( Amazon Corretto )","amazon-corretto","https:\u002F\u002Fthomas-coding-pub.oss-cn-hangzhou.aliyuncs.com\u002Fimage\u002Ff0e58c0ccc264c568803999fd7f5e3b2.png","Amazon Corretto 是开放 Java 开发工具包 (OpenJDK) 的免费、多平台、生产就绪型发行版。Corretto 提供长期支持，其中包括性能增强和安全修复。亚马逊在内部的数千种生产服务上运行 Corretto，并且 Corretto 已被证明能够兼容 Java SE 标准。借助 Corretto，您可以在常用操作系统（包括 Linux、Windows 和 macOS）上开发和运行 Java 应用程序。",20,"27",[],[265],{"id":207,"name":208,"color":209,"sortNum":4,"status":44}]