node.js中格式化数字增加千位符的几种方法_node.js
程序员文章站
2022-06-09 16:50:28
...
每三位以逗号分隔的处理方式
"15000000".split("").reverse().join("").replace(/(\d{3})/g, "$1,").split("").reverse().join("");
function formatNumber(value) {
value = value.toString();
if (value.length return value;
} else {
return formatNumber(value.substr(0, value.length - 3)) + ',' + value.substr(value.length - 3);
}
}
15000000..toLocaleString();
正则方式:
复制代码 代码如下:
"15000000".split("").reverse().join("").replace(/(\d{3})/g, "$1,").split("").reverse().join("");
"115000000".split("").reverse().join("").replace(/(\d{3})(?=[^$])/g, "$1,").split("").reverse().join("");
var str = '123123211312.333123'.replace(/(?=(?!^)(?:\d{3})+(?:\.|$))(\d{3}(\.\d+$)?)/g,',$1');
console.log(str)
'1500000000000'.replace(/\B(?=(\d{3})+$)/g,',')
循环查找方式
复制代码 代码如下:
function formatNumber(value) {
value = value.toString();
if (value.length return value;
} else {
return formatNumber(value.substr(0, value.length - 3)) + ',' + value.substr(value.length - 3);
}
}
toLocaleString函数:
复制代码 代码如下:
15000000..toLocaleString();