透過 JavaScript 的國際化 API,了解如何將數字轉換為貨幣值。
假設你有一個數字為 10
,代表某物品的價格。
你想將它轉換為 $10.00
。
然而,如果數字超過3位數,則應以不同方式顯示,例如 1000
應該顯示為 $1,000.00
。
然而,這僅是美元的表示方法。
不同的國家有不同的值表示習慣。
JavaScript 使用 ECMAScript 國際化 API 讓我們能夠輕鬆達成這一目標,這是一個相對較新的瀏覽器 API,提供了許多國際化功能,例如日期和時間格式化。
該 API 目前得到了很好的支援:
const formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2
})
formatter.format(1000) // "$1,000.00"
formatter.format(10) // "$10.00"
formatter.format(123233000) // "$123,233,000.00"
minimumFractionDigits
屬性設定小數部分的最少位數為2位。您可以在 NumberFormat MDN 頁面 中檢查可用的其他參數。
以下是一個創建意大利國家的歐元貨幣數字格式化器的示例:
const formatter = new Intl.NumberFormat('it-IT', {
style: 'currency',
currency: 'EUR'
})