{ // example 1 let formatter = new Intl.DateTimeFormat('en'); let example = formatter.formatToParts(); console.log(example); } { // example 2 let formatter = new Intl.DateTimeFormat('hi'); let example = formatter.formatToParts(); console.log(example); }
如果您需要對格式的控制比目前接受的答案稍微少一些,
Date#toLocaleDateString
可用於建立標準的特定於區域設定的渲染。locale
和options
參數讓應用程式指定應使用格式約定的語言,並允許對呈現進行一些自訂。選項關鍵範例:
當天的代表。
可能的值為「數字」、「2 位數字」。
工作日的表示。
可能的值為「窄」、「短」、「長」。
年度代表性。
可能的值為「數字」、「2 位數字」。
月份的表示。
可能的值為「數字」、「2 位數字」、「窄」、「短」、「長」。
小時的表示。
可能的值為「數字」、「2 位數字」。
可能的值為「數字」、「2 位數字」。
第二個的代表。
可能的值為「數字」、2 位數字。
# 時間格式的表示。
接受布林值 true 或 false
所有這些鍵都是可選的。您可以根據您的要求更改選項值的數量,這也將反映每個日期時間術語的存在。
注意:如果您只想配置內容選項,但仍使用目前區域設置,則為第一個參數傳遞
null
將導致錯誤。請使用undefined
來代替。對於不同的語言:
方法來達到相同目的。唯一的區別是這個函數提供了當您不傳遞任何選項時的時間。您也可以使用
toLocaleString()參考文獻:
toLocaleString( )
toLocaleDateString( )
對於自訂分隔的日期格式,您必須提取日期(或時間) 來自
DateTimeFormat
物件的元件(即的一部分ECMAScript 國際化 API),然後手動建立字串 與您想要的分隔符號。為此,您可以使用
DateTimeFormat# formatToParts
。你可以 解構數組,但這並不理想,因為數組輸出取決於 區域設定: