将 JavaScript 数字转换为货币格式,但没有“$”或任何货币符号 [重复]
Posted
技术标签:
【中文标题】将 JavaScript 数字转换为货币格式,但没有“$”或任何货币符号 [重复]【英文标题】:Convert a JavaScript number to a currency format, but without "$" or any currency symbol [duplicate] 【发布时间】:2013-07-07 23:19:21 【问题描述】:我想将我的 javascript 数字转换为货币数字,但可以使用任何货币符号
假设这是我的号码:
var number = 43434;
结果应该是这样的:
43,434
不是这个:
$43,434
【问题讨论】:
请向我们展示您尝试了什么,它是如何不工作的,等等。这个网站不是让人们为您工作的地方;如果您希望将时间和精力投入到答案中,那么您必须将时间和精力投入到您的问题中。 支持 @Daedalus 并同意 Alex 链接,它很棒。 类似的问题还有很多。您可以在此处找到操作方法:***.com/questions/2901102/… 和 ***.com/questions/13621769/… 一种方法是使用D3库,见this post 【参考方案1】:使用一个正则表达式/(\d)(?=(\d3)+(?!\d))/g
:
"1234255364".replace(/(\d)(?=(\d3)+(?!\d))/g, "$1,");
"1,234,255,364"
要使用整数实现此目的,您可以使用+""
技巧:
var number = 43434;
(number + "").replace(/(\d)(?=(\d3)+(?!\d))/g, "$1,"); // 43,434
【讨论】:
如果有人在尝试在数字上使用它时遇到“.replace is not defined”错误,则在使用替换之前应用 toString(),例如$number.toString().replace(/(\d)(?=(\d3)+(?!\d))/g, "$1,")以上是关于将 JavaScript 数字转换为货币格式,但没有“$”或任何货币符号 [重复]的主要内容,如果未能解决你的问题,请参考以下文章