我希望 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 €"
1 回答
波斯汪
TA贡献1811条经验 获得超4个赞
按照西班牙皇家学院,在西班牙的标准形式是三个一组,用空格隔开的单独号码,如果该号码有多个四位数字,即至少五(来源:https://www.rae.es /dpd/números,第 2.a 节,西班牙语)。
实际上对于五位数的数字,您的代码给了我与de-DEand相同的结果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(德语)。
添加回答
举报
0/150
提交
取消