首頁 > web前端 > js教程 > 主體

Nodejs 中常用的內建 API

Mary-Kate Olsen
發布: 2024-10-23 13:03:02
原創
571 人瀏覽過

Common built-in APIs in Nodejs

Node.js 提供了各種內建 API,這些 API 對於伺服器端操作、檔案處理、網路和其他任務至關重要。以下是關鍵 Node.js 內建 API 的完整清單:

  1. 全域物件
  2. 檔案系統 (fs) API
  3. HTTP/HTTPS API
  4. 路徑API
  5. 作業系統 API
  6. 事件API
  7. 流 API
  8. 緩衝區 API
  9. 計時器API
  10. 加密 API
  11. 子程序 API
  12. 流程API
  13. URL API

1。全域物件

  • 全球
  • 流程
  • 控制台
  • setTimeout()
  • clearTimeout()
  • setInterval()
  • clearInterval()
  • setImmediate()
  • clearImmediate()
  • queueMicrotask()

2。檔案系統 (fs) API
Node.js 中的 fs 模組可讓您與檔案系統交互,以讀取、寫入和管理檔案和目錄。

範例:非同步讀取檔案

const fs = require('fs');

fs.readFile('example.txt', 'utf8', (err, data) => {
  if (err) {
    console.error('Error reading the file:', err);
    return;
  }
  console.log(data);
});
登入後複製
登入後複製

3。 HTTP/HTTPS API
Node.js 提供了 http 和 https 模組來建立 Web 伺服器、處理 HTTP 請求以及進行 HTTP 呼叫。

範例:建立一個簡單的 HTTP 伺服器

const http = require('http');

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});
登入後複製
登入後複製

4。路徑 API
路徑模組提供了用於處理檔案和目錄路徑的實用程式。

範例:連接與解析檔案路徑

const path = require('path');

const fullPath = path.join(__dirname, 'folder', 'file.txt');
console.log(fullPath); // Outputs the full path to file.txt
登入後複製
登入後複製

5。作業系統 API
os模組提供了作業系統相關的實用函數,可以讓你取得系統的資訊。

範例:取得有關係統的資訊

const os = require('os');

console.log('Platform:', os.platform());
console.log('Architecture:', os.arch());
console.log('Total memory:', os.totalmem());
console.log('Free memory:', os.freemem());
登入後複製
登入後複製

6。事件API
events 模組提供了一個 EventEmitter 類,可讓您建立、偵聽和發出自訂事件。

範例:建立和發出事件

const EventEmitter = require('events');
const emitter = new EventEmitter();

emitter.on('event', () => {
  console.log('An event occurred!');
});

emitter.emit('event'); // Triggers the event listener
登入後複製
登入後複製

7。流 API
Node.js 中使用流來處理區塊資料的讀取和寫入,對於處理大型檔案或資料流(例如 HTTP 請求和回應)非常有用。 Stream 模組內建於 Node.js 中。

範例:以流的形式讀取檔案

const fs = require('fs');

const readStream = fs.createReadStream('example.txt');
readStream.on('data', (chunk) => {
  console.log('Received chunk:', chunk);
});
登入後複製

8。緩衝區 API
Node.js 中的 Buffer 類別用於處理二進位資料。它對於處理非字串格式的流或資料(例如原始文件或網路資料包)特別有用。

範例:建立緩衝區並寫入內容

const buffer = Buffer.from('Hello World');
console.log(buffer); // Outputs the buffer containing binary data
登入後複製

9。定時器 API
Node.js 提供了一個類似瀏覽器的 setTimeout 和 setInterval 函數的計時器。它們是 Node.js 運行時的一部分,用於在延遲後或定期執行程式碼。

範例:使用 setTimeout 延遲函數呼叫

const fs = require('fs');

fs.readFile('example.txt', 'utf8', (err, data) => {
  if (err) {
    console.error('Error reading the file:', err);
    return;
  }
  console.log(data);
});
登入後複製
登入後複製

10。加密API
crypto 模組提供用於雜湊、加密和解密的密碼函數。

範例:產生 SHA-256 雜湊

const http = require('http');

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});
登入後複製
登入後複製

11。子行程 API
child_process 模組可讓您從 Node.js 應用程式產生新進程。這對於執行系統命令或運行外部程式很有用。

範例:產生一個新程序來執行系統指令

const path = require('path');

const fullPath = path.join(__dirname, 'folder', 'file.txt');
console.log(fullPath); // Outputs the full path to file.txt
登入後複製
登入後複製

12。流程API
process 物件是一個全域對象,它提供有關當前 Node.js 進程的資訊並允許與其互動。

範例:存取命令列參數

const os = require('os');

console.log('Platform:', os.platform());
console.log('Architecture:', os.arch());
console.log('Total memory:', os.totalmem());
console.log('Free memory:', os.freemem());
登入後複製
登入後複製

13。網址API
url 模組提供了用於 URL 解析和解析的實用程式。
範例:解析 URL

const EventEmitter = require('events');
const emitter = new EventEmitter();

emitter.on('event', () => {
  console.log('An event occurred!');
});

emitter.emit('event'); // Triggers the event listener
登入後複製
登入後複製

以上是Nodejs 中常用的內建 API的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!