首頁 > web前端 > js教程 > 變更集中的 Node.js util 模組用法

變更集中的 Node.js util 模組用法

DDD
發布: 2024-11-27 06:11:22
原創
492 人瀏覽過

您將在 Changesets 原始程式碼中的第 4 行匯入下方找到此內容

import { format } from "util";
登入後複製
登入後複製

本文概述了 util 模組及其在變更集中的用法。

實用模組

util模組主要是為了支援Node.js自己的內部API的需求而設計的。然而,許多實用程式對於應用程式和模組開發人員也很有用。可以使用以下方式存取它:

const util = require('util');
登入後複製
登入後複製

您可以在此處閱讀有關 Util 模組的更多資訊。

Node.js util module usage in Changesets

Util 模組有相當多的 API,但我們對 Format API 感興趣,因為這是在 Changesets 原始碼中使用的。

util.format(format[, …args])

util.format() 方法使用第一個參數作為類似 printf 的格式傳回格式化字串。

第一個參數是包含零個或多個佔位符標記的字串。每個佔位符標記都會替換為對應參數的轉換值。支援的佔位符有:

  • %s — 字串。

  • %d — 數字(整數或浮點數值)。

  • %i — 整數。

  • %f — 浮點數值。

  • %j — JSON。如果參數包含循環引用,則替換為字串「[Circular]」。

  • %o — 物件。具有通用 JavaScript 物件格式的物件的字串表示形式。類似

    util.inspect() 帶有選項 { showHidden: true, depth: 4, showProxy: true }。這將顯示完整的物件

    包括不可枚舉的符號和屬性。

  • %O — 物件。具有通用 JavaScript 物件格式的物件的字串表示形式。類似 util.inspect()

    沒有選項。這將顯示不包括不可枚舉符號和屬性的完整物件。

  • %% — 單一百分號 (‘%’)。這不會消耗參數。

如果佔位符沒有對應的參數,則不會取代佔位符。

util.format('%s:%s', 'foo');
// Returns: 'foo:%s'
登入後複製
登入後複製

如果傳遞給util.format() 方法的參數多於佔位符的數量,則多餘的參數將被強制轉換為字串,然後連接到傳回的字串,每個字串均以空格分隔。 typeof 為‘object’或‘symbol’(null 除外)的過多參數將被 util.inspect() 轉換。

util.format('%s:%s', 'foo', 'bar', 'baz'); // 'foo:bar baz'
登入後複製

如果第一個參數不是字串,則 util.format() 傳回一個由空格分隔的所有參數串聯而成的字串。每個參數都使用 util.inspect().
轉換為字串

util.format(1, 2, 3); // '1 2 3'
登入後複製

如果僅將一個參數傳遞給 util.format(),則該參數將按原樣返回,不帶任何格式。

import { format } from "util";
登入後複製
登入後複製

現在我們了解了 Util 模組和格式 API 的基礎知識,現在讓我們來看看 Changesets 中的格式用法。

變更集中的 util.format 用法

搜尋格式,我發現了 2 個使用格式的實例。

Node.js util module usage in Changesets

const util = require('util');
登入後複製
登入後複製

這只是輸出錯誤,並且由於第一個參數是空字串,因此不需要進行替換。

Node.js util module usage in Changesets

util.format('%s:%s', 'foo');
// Returns: 'foo:%s'
登入後複製
登入後複製

這會產生一個由空格分隔的字串,假設…args是逗號分隔的

關於我們:

在 Thinkthroo,我們研究大型開源專案並提供架構指南。我們開發了使用 Tailwind 建構的可重複使用元件,您可以在專案中使用它們。我們提供 Next.js、React 和 Node 開發服務。

與我們預約會面討論您的專案。

Node.js util module usage in Changesets

參考資料:

  1. https://www.npmjs.com/package/util

  2. https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#L4

  3. https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#L88

  4. https://nodejs.org/docs/latest-v8.x/api/util.html#util_util_format_format_args

  5. https://github.com/changesets/changesets/blob/main/packages/logger/src/index.ts#L23

  6. https://github.com/changesets/changesets/blob/main/packages/get-github-info/src/index.test.ts#L127

  7. https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#L88

以上是變更集中的 Node.js util 模組用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板