当前位置: 首页 > news >正文

【基础】Node.js 介绍、安装及npm 和 npx功能了解

前言

后面安装n8n要用到,做一点技术储备。主要是它的两个工具:npm 和 npx。

Node.js介绍

Node.js 是一个免费的、开源的、跨平台的 JavaScript 运行时环境,允许开发人员在浏览器之外编写命令行工具和服务器端脚本,是一个基于 Chrome V8 引擎 的 JavaScript 运行时环境,让 JavaScript 可以脱离浏览器运行在服务器端,用于构建高性能、可扩展的网络应用(如 Web 服务器、API、微服务等)。

Node.js 相关核心工具及作用

工具/概念作用
npm(Node 包管理器)管理 JavaScript 依赖包(安装、更新、删除等)
npx(Node 包运行器)临时执行 npm 包(无需全局安装,如 npx create-react-app
yarn / pnpm更快的 npm 替代品(缓存优化、并行安装)
Express.js最流行的 Node.js Web 框架(快速搭建 API/网站)
nodemon开发工具,代码改动后自动重启 Node 服务
PM2生产环境进程管理器(守护进程、负载均衡)
Webpack / **ViteVite前端代码打包工具(配合 Node.js 使用)
TypeScriptJavaScript 的超集ts-node 运行)

 Note.js安装 

使用官方网站安装包

  1. 访问 Node.js 官网。

  2. 下载适合你系统的安装包(推荐 LTS 版本,即长期支持版本)。

  3. 运行下载的安装包,并按照安装向导操作。

  4. 安装完成后,打开命令提示符(CMD)或 PowerShell,输入 node -v 和 npm -v 来检查 Node.js 和 npm 是否正确安装。

 


npm 和 npx 的区别

npm (Node Package Manager) 和 npx (Node Package Execute) 都是 Node.js 的包管理工具,但它们有不同的用途和功能:

主要区别

特性npmnpx
主要用途包安装和管理包执行
运行方式需要先安装包才能使用可以直接运行未安装的包
安装位置安装到 node_modules 或全局临时安装使用后删除
执行命令不能直接执行包可以直接执行包

详细解释

npm(Node 包管理器)

  1. 包管理工具

    • 主要用于安装、更新、删除和管理项目依赖

    • 将包安装到项目的 node_modules 目录或全局位置

  2. 使用方式

    • 需要先安装包才能使用:npm install <package>

    • 然后通过 package.json 中的 scripts 或路径引用使用

  3. 局限性

    • 无法直接运行本地安装的包(除非配置 PATH 或使用 scripts)

    • 全局安装的包虽然可以直接运行,但会污染全局环境

npx(Node 包执行)

  1. 包执行工具

    • 主要用于临时执行 npm 包

    • 随 npm 5.2.0+ 版本自动安装

  2. 优势特性

    • 无需先安装包:可以临时下载并执行包,执行后删除

    • 运行本地安装的包:自动查找本地 node_modules 中的可执行文件

    • 避免全局安装:可以运行一次性命令而不污染全局环境

    • 指定版本运行:可以指定运行特定版本的包

  3. 典型用例

    npx create-react-app my-app  # 无需全局安装 create-react-app
    npx eslint@5.16.0 .         # 使用特定版本的 eslint
    npx http-server             # 临时运行一个 HTTP 服务器

使用场景对比

  1. 当你想安装一个依赖供长期使用时

    npm install lodash
  2. 当你想临时运行一个工具而不安装时

    npx create-react-app my-app
  3. 当你想测试不同版本的包时

    npx node@12 -v  # 临时使用 Node.js 12.x 版本

总结

  • 使用 npm 当你需要安装和管理项目依赖

  • 使用 npx 当你需要临时执行某个 npm 包(特别是 CLI 工具)

  • npx 解决了全局安装包的问题,提供了更干净、更灵活的包执行方式

两者通常一起使用,npm 负责依赖管理,npx 负责便捷执行。


特别说明

1. npx 临时包的安装路径

在 Windows 系统下,npx 下载的临时包默认存储在 npm 的缓存目录 下的 _npx 文件夹中,具体路径通常是:

C:\Users\<你的用户名>\AppData\Local\npm-cache\_npx

如何查看 npx 缓存路径?

可以运行以下命令查看 npx 的存储位置:

npx --package=some-package -c "echo %APPDATA%\npm-cache\_npx"
或者直接查看 npm 的全局缓存路径:
npm config get cache

这会返回类似 C:\Users\<用户名>\AppData\Local\npm-cache 的路径,_npx 就在其中。


2. npx 什么时候会删除临时包?

npx 的临时包不会永久存储,但也不会立即删除。它的清理机制如下:

(1) 自动清理机制

  • 默认情况下,npx 不会立即删除临时包,而是会缓存它们,以便下次快速执行。

  • npm 会定期清理旧的缓存(通常几周后),具体取决于 npm 的缓存管理策略。

(2) 手动清理

如果你想手动删除 npx 的缓存,可以运行:

npm cache clean --force

这会清除整个 npm 缓存(包括 npx 的临时包)。


3. 特殊情况:全局安装的包

如果某个包已经 全局安装(例如通过 npm install -g some-package),npx 会优先使用全局安装的版本,而不会重新下载。


总结

情况存储位置删除时机
临时包(未全局安装)C:\Users\<用户名>\AppData\Local\npm-cache\_npx由 npm 自动清理(通常几周后)
全局安装的包C:\Users\<用户名>\AppData\Roaming\npm\node_modules除非手动 npm uninstall -g,否则不会删除
手动清理运行 npm cache clean --force 可立即清除缓存-

如果你希望 npx 完全不缓存,可以使用 --no-install 强制每次都重新下载(但一般不推荐):

npx --no-install create-react-app my-app

结尾

每天一个新技术,有没有在技术的海洋里扑腾的感觉,哇哈哈

相关文章:

  • 如何快速高效学习Python?
  • 界面开发框架DevExpress XAF实践:如何在Blazor项目中集成.NET Aspire?(二)
  • (第三篇)Springcloud之Ribbon负载均衡
  • 精益数据分析(21/126):剖析创业增长引擎与精益画布指标
  • 从码云上拉取项目并在idea配置npm时完整步骤
  • 【Spring Boot】深入解析:#{} 和 ${}
  • 算法笔记.spfa算法(bellman-ford算法的改进)
  • 五、web自动化测试01
  • 电脑怎么强制退出程序回到桌面 详细操作步骤
  • 为什么要提出Null-text Inversion
  • 力扣热题100题解(c++)—矩阵
  • 深入详解人工智能数学基础——概率论中的KL散度在变分自编码器中的应用
  • Java面试实战:音视频场景下的微服务架构与缓存技术剖析
  • 26考研 | 王道 | 数据结构 | 第七章 查找
  • Windows下使用 VS Code + g++ 开发 Qt GUI 项目的完整指南
  • 2、DevEco Studio的使用
  • 【网络安全】社会工程学策略
  • LibrePhotos本地部署打造个人云相册安全存储和分享家庭照片(1)
  • 健康养生小窍门
  • 华为手机怎么进行音频降噪?音频降噪技巧分享:提升听觉体验
  • 短剧迷|《权宠》一出,《名不虚传》
  • 山东省委组织部办公室主任吴宪利已任德州市委常委、组织部部长
  • 国务院任免国家工作人员:颜清辉任人社部副部长
  • 美航母撞船后又遇战机坠海,专家:长时间作战部署疲于奔命是主因
  • 深观察丨从“不建议将导师挂名为第一作者”说开去
  • 美国参议院投票通过戴维·珀杜出任美国驻华大使