Javascript从NumberFormat获取十进制和千位分隔符

时间:2015-06-18 11:04:24

标签: javascript number-formatting

我正在寻找一种从NumberFormat对象获取十进制和千位分隔符的方法。

var de = new Intl.NumberFormat('de-DE');

后来我打算用它们将格式化的字符串解析回Javascript的float。我知道我可以创建样本编号,然后使用正则表达式进行扫描,但我觉得必须有一些更简单的方法来获取这些分隔符。

2 个答案:

答案 0 :(得分:1)

似乎你可以避免自己进行解析:

Intl.NumberFormat('de-CH').v8Parse(
    Intl.NumberFormat('de-CH').format(1000) // => 1'000
) // => 1000

但这听起来非常特定于铬:)

但如果我是你,我会避免将本地化的数字解析为数字,如果可以的话。

答案 1 :(得分:0)

这里将返回格式化的

的js函数
function customNumberFormat( num){
    var parts = (''+ (num<0?-num:num)).split("."), s=parts[0], i=L= s.length, o='',c;
    while(i--){ o = (i==0?'':((L-i)%3?'':','))+s.charAt(i) +o }
    return (num<0?'-':'') + o + (parts[1] ? '.' + parts[1] : ''); 
}