Node.js 介绍、安装及npm 和 npx工具全解析

 更新时间:2025年09月20日 11:37:59   作者:正经教主  
Node.js是一个免费的、开源的、跨平台的JavaScript运行时环境,让 JavaScript可以脱离浏览器运行在服务器端,本文主要介绍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安装

使用官方网站安装包

  • 访问 Node.js 官网
  • 下载适合你系统的安装包(推荐 LTS 版本,即长期支持版本)。
  • 运行下载的安装包,并按照安装向导操作。
  • 安装完成后,打开命令提示符(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 包管理器)

  • 包管理工具
    • 主要用于安装、更新、删除和管理项目依赖
    • 将包安装到项目的 node_modules 目录或全局位置
  • 使用方式
    • 需要先安装包才能使用:npm install <package>
    • 然后通过 package.json 中的 scripts 或路径引用使用
  • 局限性
    • 无法直接运行本地安装的包(除非配置 PATH 或使用 scripts)
    • 全局安装的包虽然可以直接运行,但会污染全局环境

npx(Node 包执行)

  • 包执行工具
    • 主要用于临时执行 npm 包
    • 随 npm 5.2.0+ 版本自动安装
  • 优势特性
  • 无需先安装包:可以临时下载并执行包,执行后删除
  • 运行本地安装的包:自动查找本地 node_modules 中的可执行文件
  • 避免全局安装:可以运行一次性命令而不污染全局环境
  • 指定版本运行:可以指定运行特定版本的包

典型用例

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

使用场景对比

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

npm install lodash

当你想临时运行一个工具而不安装时

npx create-react-app my-app

当你想测试不同版本的包时

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 强制每次都重新下载(但一般不推荐):

到此这篇关于Node.js 介绍、安装及npm 和 npx功能了解的文章就介绍到这了,更多相关node.js npm和npx内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何使用docker直接运行不同版本nodejs命令

    如何使用docker直接运行不同版本nodejs命令

    这篇文章主要介绍了如何使用docker直接运行不同版本nodejs命令,在不支持高版本Node.js的旧版操作系统上,可以通过Docker容器技术解决兼容性问题,需要的朋友可以参考下
    2024-10-10
  • 解决Node.js包管理器安装报错npm ERR! code 1的问题

    解决Node.js包管理器安装报错npm ERR! code 1的问题

    在开发过程中,我们经常需要使用各种Node.js包来扩展我们的应用程序功能,这些包通常通过npm(Node.js包管理器)进行安装和管理,有时候我们可能会遇到一些关于npm的错误,本文将详细介绍如何解决这个问题,并提供一个详细的实例,需要的朋友可以参考下
    2024-03-03
  • NodeJS创建最简单的HTTP服务器

    NodeJS创建最简单的HTTP服务器

    这篇文章主要介绍了NodeJS创建最简单的HTTP服务器的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • nodejs express实现中间件

    nodejs express实现中间件

    这篇文章主要为大家介绍了nodejs express实现中间件实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • 详解Node.js access_token的获取、存储及更新

    详解Node.js access_token的获取、存储及更新

    本篇文章主要介绍了Node.js access_token的获取、存储及更新 ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • NodeJs实现简单的爬虫功能案例分析

    NodeJs实现简单的爬虫功能案例分析

    爬虫,是一种按照一定的规则,自动地抓取网页信息的程序或者脚本。这篇文章通过一个案例给大家分享NodeJs实现简单的爬虫功能,感兴趣的朋友一起看看吧
    2018-12-12
  • 通过nodejs 服务器读取HTML文件渲染到页面的方法

    通过nodejs 服务器读取HTML文件渲染到页面的方法

    今天小编就为大家分享一篇通过nodejs 服务器读取HTML文件渲染到页面的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • nodejs用gulp管理前端文件方法

    nodejs用gulp管理前端文件方法

    本篇文章给大家分享了nodejs用gulp管理前端文件的步骤方法以及优缺点分析,有兴趣的朋友参考下。
    2018-06-06
  • 如何使用 Node.js 实现一个上传图片接口

    如何使用 Node.js 实现一个上传图片接口

    本文介绍了如何使用Node.js和Express框架创建一个简单的上传图片接口,首先,通过npm初始化项目并安装必要的依赖,如express和multer,然后,在index.js文件中编写上传图片的逻辑,并通过Postman测试接口,感兴趣的朋友跟随小编一起看看吧
    2025-02-02
  • node crawler如何添加promise支持

    node crawler如何添加promise支持

    这篇文章主要介绍了node crawler如何添加promise支持,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02

最新评论