在PHP中,我可以:
$number = 1234.56;
$nombre_format_francais = number_format($number, 2, '.', ' ');
这告诉我:
1 234.56
如何在jQuery中创建它?我想添加分隔符。
答案 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, " ");
}
有关原始功能的信息,请参阅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”(法语使用十进制逗号,而不是小数点)。
还有其他用于类似目的的库。除其他外,它们之间的选择取决于项目中的本地化范围 - 它是关于数字格式本地化还是更广泛的内容。