Node.js?介紹、安裝及npm?和?npx工具全解析
前言
后面安裝n8n要用到,做一點技術儲備。主要是它的兩個工具:npm 和 npx。
Node.js介紹
Node.js 是一個免費的、開源的、跨平臺的 JavaScript 運行時環(huán)境,允許開發(fā)人員在瀏覽器之外編寫命令行工具和服務器端腳本,是一個基于 Chrome V8 引擎 的 JavaScript 運行時環(huán)境,讓 JavaScript 可以脫離瀏覽器運行在服務器端,用于構(gòu)建高性能、可擴展的網(wǎng)絡應用(如 Web 服務器、API、微服務等)。
Node.js 相關核心工具及作用
| 工具/概念 | 作用 |
|---|---|
| npm(Node 包管理器) | 管理 JavaScript 依賴包(安裝、更新、刪除等) |
| npx(Node 包運行器) | 臨時執(zhí)行 npm 包(無需全局安裝,如 npx create-react-app) |
| yarn / pnpm | 更快的 npm 替代品(緩存優(yōu)化、并行安裝) |
| Express.js | 最流行的 Node.js Web 框架(快速搭建 API/網(wǎng)站) |
| nodemon | 開發(fā)工具,代碼改動后自動重啟 Node 服務 |
| PM2 | 生產(chǎn)環(huán)境進程管理器(守護進程、負載均衡) |
| Webpack / **ViteVite | 前端代碼打包工具(配合 Node.js 使用) |
| TypeScript | JavaScript 的超集ts-node 運行) |
Note.js安裝
使用官方網(wǎng)站安裝包
- 訪問 Node.js 官網(wǎng)。
- 下載適合你系統(tǒng)的安裝包(推薦 LTS 版本,即長期支持版本)。
- 運行下載的安裝包,并按照安裝向?qū)Р僮鳌?/li>
- 安裝完成后,打開命令提示符(CMD)或 PowerShell,輸入
node -v和npm -v來檢查 Node.js 和 npm 是否正確安裝。
npm 和 npx 的區(qū)別
npm (Node Package Manager) 和 npx (Node Package Execute) 都是 Node.js 的包管理工具,但它們有不同的用途和功能:
主要區(qū)別
| 特性 | npm | npx |
|---|---|---|
| 主要用途 | 包安裝和管理 | 包執(zhí)行 |
| 運行方式 | 需要先安裝包才能使用 | 可以直接運行未安裝的包 |
| 安裝位置 | 安裝到 node_modules 或全局 | 臨時安裝使用后刪除 |
| 執(zhí)行命令 | 不能直接執(zhí)行包 | 可以直接執(zhí)行包 |
詳細解釋
npm(Node 包管理器)
- 包管理工具:
- 主要用于安裝、更新、刪除和管理項目依賴
- 將包安裝到項目的
node_modules目錄或全局位置
- 使用方式:
- 需要先安裝包才能使用:
npm install <package> - 然后通過 package.json 中的 scripts 或路徑引用使用
- 需要先安裝包才能使用:
- 局限性:
- 無法直接運行本地安裝的包(除非配置 PATH 或使用 scripts)
- 全局安裝的包雖然可以直接運行,但會污染全局環(huán)境
npx(Node 包執(zhí)行)
- 包執(zhí)行工具:
- 主要用于臨時執(zhí)行 npm 包
- 隨 npm 5.2.0+ 版本自動安裝
- 優(yōu)勢特性:
- 無需先安裝包:可以臨時下載并執(zhí)行包,執(zhí)行后刪除
- 運行本地安裝的包:自動查找本地 node_modules 中的可執(zhí)行文件
- 避免全局安裝:可以運行一次性命令而不污染全局環(huán)境
- 指定版本運行:可以指定運行特定版本的包
典型用例:
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 版本
總結(jié)
- 使用 npm 當你需要安裝和管理項目依賴
- 使用 npx 當你需要臨時執(zhí)行某個 npm 包(特別是 CLI 工具)
- npx 解決了全局安裝包的問題,提供了更干凈、更靈活的包執(zhí)行方式
兩者通常一起使用,npm 負責依賴管理,npx 負責便捷執(zhí)行。
特別說明
1. npx 臨時包的安裝路徑
在 Windows 系統(tǒng)下,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 不會立即刪除臨時包,而是會緩存它們,以便下次快速執(zhí)行。
- npm 會定期清理舊的緩存(通常幾周后),具體取決于
npm的緩存管理策略。
(2) 手動清理
如果你想手動刪除 npx 的緩存,可以運行:
npm cache clean --force
這會清除整個 npm 緩存(包括 npx 的臨時包)。
3. 特殊情況:全局安裝的包
如果某個包已經(jīng) 全局安裝(例如通過 npm install -g some-package),npx 會優(yōu)先使用全局安裝的版本,而不會重新下載。
總結(jié)
| 情況 | 存儲位置 | 刪除時機 |
|---|---|---|
| 臨時包(未全局安裝) | 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內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
詳解nodejs中express搭建權限管理系統(tǒng)
本篇文章主要介紹了詳解express搭建權限管理系統(tǒng),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09

