第 30 章:函式庫
目錄
購買書籍
(廣告,請勿封鎖。)

第 30 章:函式庫

本章涵蓋 JavaScript 函式庫。首先說明墊片和多重填充是什麼,這兩種是特別類型的函式庫。然後列出幾個核心函式庫。最後,指出其他與函式庫相關的資源。

墊片與多重填充

墊片和多重填充是用於在較舊的 JavaScript 引擎上改造較新功能的函式庫:

範例包括

  • 「HTML5 跨瀏覽器多重填充」:Paul Irish 編制的清單。
  • es5-shim 是(非多重填充)墊片,它在 ECMAScript 3 引擎上改造 ECMAScript 5 功能。它純粹與語言相關,在 Node.js 上與在瀏覽器上一樣有意義。

ECMAScript 國際化 API

ECMAScript 國際化 API 是 一個標準 JavaScript API,有助於處理與國際化相關的任務:排序(排序和搜尋字串)、數字格式化,以及日期和時間格式化。本節提供簡要概述,並提供更多閱讀資料。

ECMAScript 國際化 API,第 1 版

API 的第一版提供下列服務

  • 排序 支援兩種情境:對一組字串排序,以及在一組字串中搜尋。排序會依據地區參數化,並認識 Unicode。
  • 數字格式化。參數包括

    • 格式化樣式:十進位、貨幣(哪一種貨幣以及如何稱呼它是由其他參數決定的)、百分比
    • 地區(直接指定或最佳符合,透過比對器物件搜尋)
    • 編號系統(西方數字、阿拉伯數字、泰國數字等)
    • 精度:整數位數、小數位數、有效位數
    • 群組分隔符號開或關
  • 日期和時間格式化。參數包括

    • 要格式化的資訊以及以何種樣式(簡短、長、數字等)
    • 地區設定
    • 時區

大部分功能都是透過全域變數 Intl 中的物件存取,但 API 也擴充了下列方法

  • String.prototype.localeCompare
  • Number.prototype.toLocaleString
  • Date.prototype.toLocaleString
  • Date.prototype.toLocaleDateString
  • Date.prototype.toLocaleTimeString

這是哪種類型的標準?

標準「ECMAScript 國際化 API」(EIA)的編號為 ECMA-402。它是由 Ecma International 主持,這個協會也主持 EMCA-262,也就是 ECMAScript 語言規格。這兩個標準都由 TC39 維護。因此,EIA 儘管不是 ECMA-262 的一部分,但與這門語言的關係非常密切。這個 API 的設計可以與 ECMAScript 5 和 ECMAScript 6 搭配使用。一組相符性測試補充了這個標準,並確保 API 的各種實作相容(ECMA-262 有類似的測試套件)。

什麼時候可以使用?

大多數現代瀏覽器已經支援它,或正在支援的過程中。David Storey 建立了一張詳細的 相容性表格(指出哪些瀏覽器支援哪些地區設定,以及更多資訊)。

進一步閱讀

ECMAScript 國際化 API 的 規格 由 Norbert Lindenberg 編輯。它有 PDF、HTML 和 EPUB 格式。此外,還有幾篇全面的入門文章

JavaScript 資源目錄

本節說明 收集 JavaScript 資源資訊的網站。此類目錄有幾種類型。

以下是 JavaScript 的一般目錄清單

專門目錄包括

顯然地,您隨時可以直接瀏覽套件管理員的註冊表

CDN (內容傳遞網路) 和 CDN 內容的目錄包括

致謝

以下人員對此章節有貢獻:Kyle Simpson (@getify)、Gildas Lormeau (@check_ca)、Fredrik Sogaard (@fredrik_sogaard)、Gene Loparco (@gloparco)、Manuel Strehl (@m_strehl) 和 Elijah Manor (@elijahmanor)。

下一章:31. 模組系統和套件管理員