intl.NumberFormat 显示 es-ES 货币格式的错误结果
intl.NumberFormat shows incorrect result for es-ES currency formatting
我希望 es-ES 和 de-DE 区域设置的输出相同。 (我让西班牙同事查了他的工资单,他确认千位后确实有小数)
var number = 1000;
console.log(new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(number));
console.log(new Intl.NumberFormat('es-ES', { style: 'currency', currency: 'EUR' }).format(number));
结果:
> "1.000,00 €"
> "1000,00 €"
根据 Real Academia Española, the standard form in Spanish is to separate numbers in groups of three, separated with whitespace, if the number has more than four digits, i.e. at least five (Source: https://www.rae.es/dpd/números 节 2.a,西班牙语)。
实际上,对于五位数字,您的代码为 de-DE
和 es-ES
提供了相同的结果,即用点分隔:
let number2 = 10000
console.log(new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(number2));
console.log(new Intl.NumberFormat('es-ES', { style: 'currency', currency: 'EUR' }).format(number2));
给我
10.000,00 €
10.000,00 €
用点分隔似乎不完全正确*,但不对四位数字进行分组似乎符合RAE的语言规则。
* 实际上,在德语中,根据 Duden 的说法,您应该使用空格而不是点,例如参见https://www.duden.de/sprachwissen/rechtschreibregeln/zahlen-und-ziffern(德语)。
我希望 es-ES 和 de-DE 区域设置的输出相同。 (我让西班牙同事查了他的工资单,他确认千位后确实有小数)
var number = 1000;
console.log(new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(number));
console.log(new Intl.NumberFormat('es-ES', { style: 'currency', currency: 'EUR' }).format(number));
结果:
> "1.000,00 €"
> "1000,00 €"
根据 Real Academia Española, the standard form in Spanish is to separate numbers in groups of three, separated with whitespace, if the number has more than four digits, i.e. at least five (Source: https://www.rae.es/dpd/números 节 2.a,西班牙语)。
实际上,对于五位数字,您的代码为 de-DE
和 es-ES
提供了相同的结果,即用点分隔:
let number2 = 10000
console.log(new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(number2));
console.log(new Intl.NumberFormat('es-ES', { style: 'currency', currency: 'EUR' }).format(number2));
给我
10.000,00 €
10.000,00 €
用点分隔似乎不完全正确*,但不对四位数字进行分组似乎符合RAE的语言规则。
* 实际上,在德语中,根据 Duden 的说法,您应该使用空格而不是点,例如参见https://www.duden.de/sprachwissen/rechtschreibregeln/zahlen-und-ziffern(德语)。