js格式化数字

Posted on   猫头唔食鱼  阅读(853)  评论(0编辑  收藏  举报

1.保留两位小数,千分位,加上金额前缀,可以传入字符串或数字

new Intl.NumberFormat('zh-CN', {style: 'currency', currency: 'CNY' , maximumFractionDigits: 2 }).format(123456.78967) // ¥123,456.79

2.加千分位并保留两位小数(常用)

new Intl.NumberFormat('zh-CN', {style: 'currency', currency: 'CNY' , maximumFractionDigits: 2 }).format(123456.78967) .split('¥')[1] //  123,456.79

3.仅加千分位,可以传入字符串或数字

new Intl.NumberFormat().format('3500.444')  // 3,500.444
new Intl.NumberFormat().format(3500.444)  // 3,500.444

4.加币种前缀

const number = 123456.789;
// 美元 "$123,456.79"
new Intl.NumberFormat('en-US', { style: 'currency', currency: 'USD' }).format(number) 
// 人民币 "¥123,456.79"
new Intl.NumberFormat('zh-CN', { style: 'currency', currency: 'CNY' }).format(number)


5.转化成百分数(注意,大于等于10的数字都不能被转化)

[0.01, 1.2, 0.0123,0.1,1,1.1].map(num => {
    return new Intl.NumberFormat(undefined, { style: 'percent', maximumFractionDigits: 2 }).format(num) 
})
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2019-02-17 微信开发者工具的一些快捷键
点击右上角即可分享
微信分享提示