使用Intl.NumberFormat时,Edge和IE不会显示USD/CAD货币符号

Kir*_*ten 5 javascript internet-explorer currency microsoft-edge react-intl

对不起,如果有人问我但找不到任何东西......

Chrome,Firefox等中的以下代码将返回"US $"的货币符号:

new Intl.NumberFormat('en-CA', {
    style: 'currency',
    currencyDisplay: 'symbol',
    currency: 'USD'
}).format(65421.45)
Run Code Online (Sandbox Code Playgroud)

如果货币设置为'CAD',它将只使用'$':

new Intl.NumberFormat('en-CA', {
    style: 'currency',
    currencyDisplay: 'symbol',
    currency: 'CAD'
}).format(65421.45)
Run Code Online (Sandbox Code Playgroud)

但是在我测试的IE和Edge的所有版本中,这两个示例都将返回货币符号'$'.无论使用何种地区或货币,它都不会返还US $或CA $.(同样适用于澳元,港币等)

示例:https://jsfiddle.net/5wfzk7mf/

当我使用react-intl的formatNumber()函数时也会发生这种情况,因为它正在使用Intl.NumberFormat.

我错过了什么或这是一个浏览器错误?