Intl.NumberFormat() 不显示比特币 Ƀ 符号

Intl.NumberFormat() does not show the Bitcoin Ƀ Symbol

Intl.NumberFormat 不显示比特币符号。

CFORMAT_USD = new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'USD', minimumFractionDigits: 8 }); 
CFORMAT_BTC = new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'BTC', minimumFractionDigits: 8 }); 

console.log(CFORMAT_USD.format(1000));
// 1.000,00000000 $

console.log(CFORMAT_BTC.format(1000));  
// 1.000,00000000 BTC

我目前的解决方法

console.log(CFORMAT_BTC.format(1000).replace(/BTC/,'Ƀ'));
// 1.000,00000000 Ƀ

是否有更好(干净)的解决方案?

根据bitcoin.it

The ISO 4217 currency code for Bitcoin is XBT. However, at the moment it is an unofficial code according to the ISO 4217 standard.

所以正确的代码应该是

Intl.NumberFormat('de-DE', { style: 'currency', currency: 'XBT' })

但是由于它还没有进入 this list,浏览器还没有实现它。

所以我个人会使用 XBT 代码而不是 BTC,根据 ISO 4217,后者是完全无效的,以防万一有一天它进入列表。