本文共 987 字,大约阅读时间需要 3 分钟。
用逗号分隔大数字,每三位数用逗号分隔。
使用浏览器原生方法:
let num = 123456num.toLocaleString() // '123,456'
在nodejs环境中,不能直接使用toLocaleString方法,需要引入intl模块。
require('intl').NumberFormat().format(123456) // '123,456'
正则表达式是一门玄学…
function numberWithCommas(x) { var parts = x.toString().split("."); parts[0] = parts[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, ","); return parts.join(".");}
function commaNum(num) { let parts = num.toString().split('.') parts[0] = ((str) => { let tmp = '' let counter = 0 for(let i = str.length - 1; i >= 0; i--) { if (counter == 3) { tmp += ',' i++ counter = 0 continue } tmp += str[i] counter++ } tmp = tmp.split('').reverse().join('') return tmp })(parts[0]) return parts.join('.')}console.log(commaNum('23456324')) // '23,456,324'console.log(commaNum('')) // ''console.log(commaNum('23')) // '23'console.log(commaNum('243')) // '243'console.log(commaNum('2343.345')) // '2,343.345'
转载地址:http://nauwz.baihongyu.com/