Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 为什么角度数管道输出与Intl.NumberFormat.format()不同?_Angular_Localization_Internationalization_Angular6 - Fatal编程技术网

Angular 为什么角度数管道输出与Intl.NumberFormat.format()不同?

Angular 为什么角度数管道输出与Intl.NumberFormat.format()不同?,angular,localization,internationalization,angular6,Angular,Localization,Internationalization,Angular6,使用数字管道时,我遇到的输出与我认为已指定要使用的区域设置的自定义Intl.NumberFormat事件不同 假设我有一个数字x=1234.56,我想输出它 管道返回编号1234.56 {{x|number:'1.2-2':'de-CH'} Intl.NumberFormat返回1'234.56 twoFractionDigitNumberFormat=new Intl.NumberFormat('de-CH',{minimumFractionDigits:2,maximumFractionD

使用数字管道时,我遇到的输出与我认为已指定要使用的区域设置的自定义
Intl.NumberFormat
事件不同

假设我有一个数字
x=1234.56
,我想输出它

管道返回编号1234.56

{{x|number:'1.2-2':'de-CH'}
Intl.NumberFormat
返回1'234.56

twoFractionDigitNumberFormat=new Intl.NumberFormat('de-CH',{minimumFractionDigits:2,maximumFractionDigits:2});
{{twoFractionDigitNumberFormat.format(x)}
我已经设置了JSFIDLE来显示不同的输出:


我知道我可以创建一个自定义管道,用
替换
,,但我想知道这个差异是从哪里来的,理想情况下,除了替换字符串外,我还可以如何修复它。如果我得到正确的通知,数字管道也会在引擎盖下使用国际化api。

区别在于Angular不使用Intl api(除非您使用Angular的非常旧版本)。好的,谢谢@JBNizet的快速回复。我添加了angular6标记,以明确此行为与版本相关。