jQuery中的分隔符号

时间:2013-04-18 15:35:45

标签: php javascript jquery html

在PHP中,我可以:

$number = 1234.56;
$nombre_format_francais = number_format($number, 2, '.', ' ');

这告诉我:

1 234.56

如何在jQuery中创建它?我想添加分隔符。

3 个答案:

答案 0 :(得分:1)

我做了一些搜索,但这是我能想到的所有内容,因为没有内置方法:

创建数字

var num = 1234.56;

格式化小数位 - 只需要更长的小数......

var result = num.toFixed(2); 

添加空格

result = numberWithSpace(result);

function numberWithSpace(x) {
    return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, " ");
}

Working Fiddle

有关原始功能的信息,请参阅this answer

答案 1 :(得分:1)

function addSpaces(nStr)
{
    nStr += '';
    x = nStr.split('.');
    x1 = x[0];
    x2 = x.length > 1 ? '.' + x[1] : '';
    var rgx = /(\d+)(\d{3})/;
    while (rgx.test(x1)) {
        x1 = x1.replace(rgx, '$1' + ' ' + '$2');
    }
    return x1 + x2;
}

刚刚从here取得它并进行了调整。

答案 2 :(得分:1)

jQuery库没有数字本地化功能,但有Globalize.js,它最初是作为jQuery的本地化插件开发的,但是被改为独立的库。它包括许多语言的预定义数字格式以及修改或添加它们的简便方法。

使用Globalize.js,您可以例如首先调用Globalize.culture('fr'),然后Globalize.format(number)将生成按法语约定格式化的数字。它会产生正确的格式,例如“1 234,56”(法语使用十进制逗号,而不是小数点)。

还有其他用于类似目的的库。除其他外,它们之间的选择取决于项目中的本地化范围 - 它是关于数字格式本地化还是更广泛的内容。