Node.js v26.0.0 說明文件
- Node.js v26.0.0
- 目錄
- 索引
- 關於此說明文件
- 用法與範例
- 斷言測試
- 非同步內容追蹤
- Async hooks
- Buffer
- C++ 擴充套件
- 使用 Node-API 的 C/C++ 擴充套件
- C++ 嵌入器 API
- 子程序
- 叢集
- 命令列選項
- Console
- Crypto
- 除錯器
- 棄用的 API
- Diagnostics Channel
- DNS
- 網域 (Domain)
- 環境變數
- 錯誤
- 事件
- 檔案系統
- 全域變數
- HTTP
- HTTP/2
- HTTPS
- 檢查器
- 國際化
- 模組:CommonJS 模組
- 模組:ECMAScript 模組
- 模組:
node:moduleAPI - 模組:套件
- 模組:TypeScript
- Net
- Iterable Streams API
- OS
- Path
- 效能勾子 (Performance hooks)
- 權限
- 程序
- Punycode
- 查詢字串
- Readline
- REPL
- 報告
- 單一可執行應用程式
- SQLite
- Stream
- 字串解碼器
- 測試執行器
- 計時器
- TLS/SSL
- 追蹤事件
- TTY
- UDP/資料報
- URL
- 公用工具
- V8
- VM
- WASI
- Web Crypto API
- Web Streams API
- 工作執行緒
- Zlib
- Zlib 可反覆運算壓縮
- 其他版本
- 選項
關於本文件#
歡迎閱讀 Node.js 官方 API 參考文件!
Node.js 是基於 V8 JavaScript 引擎所建構的 JavaScript 執行環境。
參與貢獻#
若發現本文件有誤,請於 問題追蹤系統 (issue tracker) 回報。有關如何提交合併請求 (pull request) 的說明,請參閱 貢獻指南。
穩定性索引#
本文件各處均標示了該章節的穩定性。部分 API 因極為成熟且被廣泛依賴,幾乎不可能發生變更。其他 API 則可能尚處於全新或實驗階段,或已知具有潛在風險。
穩定性索引如下:
穩定性:0 - 已棄用。該功能可能會發出警告。不保證向後相容性。
穩定性:1 - 實驗性。該功能不受 語意化版本控制 (semantic versioning) 規則約束。在未來的任何版本中,可能會發生不相容的變更或移除。不建議在生產環境中使用此功能。
實驗性功能細分為以下階段:
- 1.0 - 早期開發。此階段的實驗性功能尚未完成,且可能會發生重大變更。
- 1.1 - 主動開發。此階段的實驗性功能已接近最小可行性。
- 1.2 - 發布候選版本 (Release candidate)。此階段的實驗性功能預計已準備好進入穩定狀態。預計不會再有破壞性的變更,但仍可能因應使用者回饋或該功能的底層規範開發而進行調整。我們鼓勵使用者進行測試並提供回饋,以便我們確認該功能是否已準備好被標記為穩定。
實驗性功能通常會在畢業為穩定版本,或是在沒有棄用週期 (deprecation cycle) 的情況下被移除,從而結束其實驗狀態。
穩定性:2 - 穩定。與 npm 生態系統的相容性是首要考量。
穩定性:3 - 舊有 (Legacy)。儘管此功能不太可能被移除,且仍受語意化版本控制保證的涵蓋,但它已不再主動維護,且已有其他替代方案可用。
若某項功能的使用不會造成危害且在 npm 生態系統中被廣泛依賴,則會被標記為「舊有」而非「已棄用」。在舊有功能中發現的錯誤不太可能得到修復。
在使用實驗性功能時請務必謹慎,特別是在開發函式庫時。使用者可能未察覺到實驗性功能正在被使用。當實驗性 API 發生修改時,可能會導致使用者對錯誤或行為變更感到意外。為避免意外,使用實驗性功能可能需要搭配命令列旗標。實驗性功能也可能會發出 警告。
穩定性概覽#
| API | 穩定性 |
|---|---|
| Assert (斷言) | (2) 穩定 |
| Async hooks | (1) 實驗性 |
| 非同步內容追蹤 | (2) 穩定 |
| Buffer | (2) 穩定 |
| 子程序 (Child process) | (2) 穩定 |
| 叢集 | (2) 穩定 |
| Console | (2) 穩定 |
| Crypto | (2) 穩定 |
| 除錯器 | (2) 穩定 |
| 診斷報告 (Diagnostic report) | (2) 穩定 |
| Diagnostics Channel | (2) 穩定 |
| DNS | (2) 穩定 |
| 網域 (Domain) | (0) 已棄用 |
| 事件 | (2) 穩定 |
| 檔案系統 | (2) 穩定 |
| 全域物件 | (2) 穩定 |
| HTTP | (2) 穩定 |
| HTTP/2 | (2) 穩定 |
| HTTPS | (2) 穩定 |
| 檢查器 | (2) 穩定 |
| 反覆運算壓縮 (Iterable Compression) | (1) 實驗性 |
| 可迭代串流 (Iterable Streams) | (1) 實驗性 |
| 模組:CommonJS 模組 | (2) 穩定 |
| 模組:ECMAScript 模組 | (2) 穩定 |
| 模組:TypeScript | (2) 穩定 |
| Net | (2) 穩定 |
| Node-API | (2) 穩定 |
| OS | (2) 穩定 |
| Path | (2) 穩定 |
| 效能測量 API | (2) 穩定 |
| Punycode | (0) 已棄用 |
| 查詢字串 (Query string) | (2) 穩定 |
| Readline | (2) 穩定 |
| REPL | (2) 穩定 |
| 單一可執行應用程式 | (1.1) 主動開發 |
| SQLite | (1.2) 發布候選版本 |
| Stream | (2) 穩定 |
| 字串解碼器 | (2) 穩定 |
| 測試執行器 | (2) 穩定 |
| 計時器 | (2) 穩定 |
| TLS (SSL) | (2) 穩定 |
| 追蹤事件 | (1) 實驗性 |
| TTY | (2) 穩定 |
| UDP/資料報通訊端 (datagram sockets) | (2) 穩定 |
| URL | (2) 穩定 |
| Util (公用工具) | (2) 穩定 |
| VM (執行 JavaScript) | (2) 穩定 |
| Web Crypto API | (2) 穩定 |
| Web Streams API | (2) 穩定 |
| WebAssembly 系統介面 (WASI) | (1) 實驗性 |
| 工作執行緒 | (2) 穩定 |
| Zlib | (2) 穩定 |
JSON 輸出#
每個 .html 文件都有一個對應的 .json 文件。這是為了提供給 IDE 及其他需要讀取本文件的工具使用。
系統呼叫與 man 手冊頁#
封裝了系統呼叫的 Node.js 函式會對此進行說明。文件中會連結至對應的 man 手冊頁,描述該系統呼叫的運作方式。
大多數 Unix 系統呼叫在 Windows 上都有對應的實現。不過,行為上的差異往往是不可避免的。