博客
关于我
javascript千位分隔
阅读量:389 次
发布时间:2019-03-05

本文共 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/

你可能感兴趣的文章
netty——Handler和pipeline
查看>>
Vue输出HTML
查看>>
netty——黏包半包的解决方案、滑动窗口的概念
查看>>
Netty中Http客户端、服务端的编解码器
查看>>
Netty中使用WebSocket实现服务端与客户端的长连接通信发送消息
查看>>
Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
查看>>
Netty中的组件是怎么交互的?
查看>>
Netty中集成Protobuf实现Java对象数据传递
查看>>
netty之 定长数据流处理数据粘包问题
查看>>
Netty事件注册机制深入解析
查看>>
netty代理
查看>>
Netty入门使用
查看>>
netty入门,入门代码执行流程,netty主要组件的理解
查看>>
Netty原理分析及实战(一)-同步阻塞模型(BIO)
查看>>
Netty原理分析及实战(三)-高可用服务端搭建
查看>>
Netty原理分析及实战(二)-同步非阻塞模型(NIO)
查看>>
Netty原理分析及实战(四)-客户端与服务端双向通信
查看>>
Netty发送JSON格式字符串数据
查看>>
Netty和Tomcat的区别已经性能对比
查看>>
Netty在IDEA中搭建HelloWorld服务端并对Netty执行流程与重要组件进行介绍
查看>>