用 JS 实现数字千分位格式化
需求:用 JS 实现数字千分位格式化,每个三位添加一个逗号
方法一:利用字符串str.slice(-3)是取最后三位数字,并在前面添加‘,’号,再通过strNum.slice(0,str.length-3)(是取从字符串开始到后三位截止)来改变原字符串的位数,然后循环即可。
function formatStr(num){ let strNum = num.toString(); let res = ''; while (strNum.length > 3) { //选取后三位,在前面添加','并拼接 res = ',' + strNum.slice(-3) + res; //除后三位以外全部选取,对原字符串重新赋值来改变长度 strNum = strNum.slice(0,strNum.length-3); }; res = strNum + res; return res; } let str = '111213213322'; console.log(formatStr(str));//1,111,213,213,322
方法二:循环字符串,从后开始循环j%3===0判断是否是3的倍数,是的话就在前面添加‘,’号,不是直接拼接。
function formatStr(num) { let str = ''; let strNum = num.toString(); let len = strNum.length; for (let i = len - 1; i >= 0; i--) { const j = len - i; //获取新的字符的长度 if (j % 3 === 0) { if (i !== 0) { str = ',' + strNum[i] + str; } else { //第一次直接拼接 str = strNum[i] + str; } } else { str = strNum[i] + str; } } return str } let str = '1111213213322'; console.log(formatStr(str));//1,111,213,213,322
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!