js分割数字每三个以一个逗号划分,数字转换为RMB形式。
正则表达式替换法一:
var str = "123456789"
str.replace(/\B(?=(?:\d{3})+\b)/g, ',') // 匹配单词边界替换为逗号
正则表达式替换法二:
var str = "123456789"
str.replace(/(\d)(?=(\d{3})+$)/g, '$1,') // (\d{3})+$ 的意思是连续匹配 3 个数字,且最后一次匹配以 3 个数字结尾
常规循环重组法:
// 思路来源于正则表达式替换法二,判断当前循环的数字后面的数长度是否为3的倍数,如果是则拼接一个逗号。
function getSplitStr(str) { // 参数可传数字与字符
str = str.toString()
var result = ""
var strLen = str.length
for (var i = 1; i <= strLen; i++) {
result += str[i - 1]
if ((strLen - i) % 3 === 0 && i !== strLen) {
result += ','
}
}
return result
}
getSplitStr(12345678) // 调用方法 12,345,678

浙公网安备 33010602011771号