输出数字,3 位数字后带逗号
Output numbers with comma after 3 digits
我使用了这个jQuery代码
jQuery.fn.digits = function(){
return this.each(function(){
jQuery(this).text( $(this).text().replace(/('d)(?=('d'd'd)+(?!'d))/g, "$1,") );
})
}
对于数字 150000我希望它能放出150,000
但它输出这个:150,000.00
我不想要这些额外的.00
我发现for
循环比正则表达式更容易理解。
function addCommas(num) {
var characters = parseInt(num, 10).toString();
var output = '';
for (var offset = characters.length; offset > 0; offset -= 3) {
output = characters.slice(Math.max(offset - 3, 0), offset) + (output ? ',' + output : '');
}
return output;
}
您可以使用 JQuery Number 格式化程序插件,因此您不必处理这样的正则表达式来格式化您的数字:
Jquery Number 格式化程序
另一种解决方法是只修剪最后 3 个字符
$(this).text().replace(/('d)(?=('d'd'd)+(?!'d))/g, "$1,").slice(0,-3)
在正则表达式之前尝试 Math.round,然后在之后尝试子字符串 - 这是未经测试的
var newnumber = Math.round(parseInt($(this).text());
var withcommas = newnumber.replace(/('d)(?=('d'd'd)+(?!'d))/g, "$1,");
$(this).text(withcommas.substring(0, s.indexOf('.')));
相关文章:
- 函数将输出nan而不是数字,为什么
- 如何输出数字所需的有效位数
- 在输出数字的千分之一位置插入逗号
- 如何将以下函数更改为字母数字输出
- 向Javascript输出中添加逗号分隔的数字
- JScalc.io计算器基本故障(输出变量为空,不返回数字)
- 在追加文本中舍入数字输出
- 为什么setTimeout输出不按顺序添加的数字
- 用户在数字上输入金额,然后输出最高数字javascript
- 接收输入数字,直到用户输入零.然后输出最高.JavaScript
- Javascript,串口可以't输出数字,只有ascii
- 将字符串返回到类型为“0”的输出字段;数字“;针对用户错误javascript
- 从给定的最大数字中减去并输出数字输入值
- 带有数字的字符串数组输出
- 仅输出后一个字符串,其中包含 JavaScript 中最大数字的总和的数字
- 如何创建一个计数器循环,该循环在单击提交按钮时启动,并输出多行单词,每个单词前面都有一个数字
- 尝试在输入类型数字形式输出中计算总计
- 我无法根据输入到文本字段中的数字返回某个输出
- JavaScript:这个数字是如何作为输出的
- JavaScript错误地试图将path读取为数字-输出NaN