Javascript 为什么Intl.NumberFormat在es语言环境中将4位数字一起格式化?
我正在尝试使用Intl.NumberFormat格式化一个数字 我已经检查过了,但是我无法得到回复,我想它应该会返回 我正在使用西班牙语区域设置进行格式化,我希望获得数千之间的点分隔符(使用Javascript 为什么Intl.NumberFormat在es语言环境中将4位数字一起格式化?,javascript,ecmascript-6,internationalization,Javascript,Ecmascript 6,Internationalization,我正在尝试使用Intl.NumberFormat格式化一个数字 我已经检查过了,但是我无法得到回复,我想它应该会返回 我正在使用西班牙语区域设置进行格式化,我希望获得数千之间的点分隔符(使用usegrouting选项),但是,我没有得到它 预期结果:1.124,50欧元 获得的结果:1124,50欧元 var sNumber='1124.5' var编号=新编号(sNumber); 让样式={ 风格:“货币”, 货币:“欧元”, 最小分数位数:2, 使用分组:正确 }; 常量格式化程序=新
usegrouting
选项),但是,我没有得到它
- 预期结果:1.124,50欧元
- 获得的结果:1124,50欧元
var sNumber='1124.5'
var编号=新编号(sNumber);
让样式={
风格:“货币”,
货币:“欧元”,
最小分数位数:2,
使用分组:正确
};
常量格式化程序=新的Intl.NumberFormat(“es”,样式);
console.log(formatter.format(number))代码>这似乎是具有4位数字(即1234.56)的西班牙语格式化程序的一项功能
查看以下内容并运行它:
let样式={
风格:“货币”,
货币:“欧元”,
最小分数位数:2,
使用分组:正确
};
var formatter=新的Intl.NumberFormat(“es”,样式);
console.log(‘西班牙语’);
log(formatter.format(1234.56));
log(formatter.format(12345.67));
log(formatter.format(123456.78));
格式化程序=新的Intl.NumberFormat(“de de”,样式);
console.log('德语(de)');
log(formatter.format(1234.56));
log(formatter.format(12345.67));
log(formatter.format(123456.78))代码>工作方式与预期相同,用于MESAT工作方式与预期相同。在西班牙地区,你应该写1124,50欧元,但11.124,50欧元。没有分组分隔符如果只有两个组,第一个组只有一个成员如果这是正确的,那么这意味着西班牙亚马逊网站在将1099写为1.099时显示错误。这里的要点是,西班牙机构“RAE”规定组分隔符不应用于4个整数→