Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.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
Javascript NumberFormat返回将数字转换为货币的错误格式_Javascript_Formatting - Fatal编程技术网

Javascript NumberFormat返回将数字转换为货币的错误格式

Javascript NumberFormat返回将数字转换为货币的错误格式,javascript,formatting,Javascript,Formatting,代码: let currency=400023; console.log(新的Intl.NumberFormat('de-de'{ 风格:“货币”, 货币:欧元 }).格式(货币)正如@RobG指出的,这是JS实现的一个问题,它不能正确地支持Intl对象 所有当前浏览器都完全支持Intl 如果在Node.js上运行代码,情况会稍微复杂一些。在Node.js 13之前,仅部分支持国际化(ICU),包括Intl 从Node.js 13开始,默认情况下内置了完整的ICU/国际化支持。详情请参阅:

代码:

let currency=400023;
console.log(新的Intl.NumberFormat('de-de'{
风格:“货币”,
货币:欧元

}).格式(货币)正如@RobG指出的,这是JS实现的一个问题,它不能正确地支持Intl对象

所有当前浏览器都完全支持Intl

如果在Node.js上运行代码,情况会稍微复杂一些。在Node.js 13之前,仅部分支持国际化(ICU),包括Intl

从Node.js 13开始,默认情况下内置了完整的ICU/国际化支持。详情请参阅:

基本上,您可以运行以下代码:


console.log(新的Intl.DateTimeFormat('es',{month:'long')).format(新的日期(9E8))Firefox:“400.023,00欧元”,Chrome:“400.023,00欧元”,Safari:“400.023,00欧元”,Opera:“400.023,00欧元”。我只是看不到。如果你从IDE本地运行JS文件?如果我在这里运行代码片段,它就会工作。但在我本地的机器上却没有。它也不适用于我正在使用的第三方应用程序,我假设该应用程序在服务器机器上运行代码,并且使用逗号而不是千位分隔符的点返回相同的结果。可能是这些实现不支持de语言标记。这是Intl对象(和toLocaleString)的问题之一,请参见。