可只用于整数与小数。
效果演示:
html 部分:
<body>
<input type="text" id="lname"/>
</body>
jq部分方法一:
<script src="./jquery.js"></script>
<script>
$('#lname').keyup(function () {
var a = $('#lname').val();
var b = TripartiteMethod(a);
$(this).val(b);
})
function TripartiteMethod(num) {
var type = true;
var value = '';
//去除逗号字符
num = num.replace(/,/g, "");
//判断是否有小数点
if (num.indexOf(".") < 0) {
var t1 = num.toString().split('');
} else {
type = false;
var arr = num.toString().split('.');
var t1 = arr[0].toString().split('');
var t2 = arr[1].toString();
}
//添加逗号字符
var result = [], counter = 0;
for (var i = t1.length - 1; i >= 0; i--) {
counter++;
result.unshift(t1[i]);
if ((counter % 3) == 0 && i != 0) {
result.unshift(',');
}
}
//判断显示类型是否有小数
if (type === true) {
value = result.join('');
} else {
value = result.join('') + '.' + t2;
}
return value;
}
</script>
借鉴:https://blog.csdn.net/qq_25073545/article/details/82884781
第二种方法:
function parseFloatValue(num){
num = num.replace(/,/g, "");
var value = parseFloat(Number(num)).toLocaleString();
return value;
}
注意:这种方法不能使用小数点,且位数超过一定值会以0填充。