jQuery:货币格式编号

Gus*_*ooL 22 javascript jquery

我的html中有这样的数字

<div class="number">950000</div>
Run Code Online (Sandbox Code Playgroud)

我希望jQuery改变它

<div class="number">Rp. 950.000</div>
Run Code Online (Sandbox Code Playgroud)

我怎么能在jquery中做到这一点?

Spu*_*ley 28

除以1000,并用于.toFixed(3)确定小数位数.

var output = (input/1000).toFixed(3);
Run Code Online (Sandbox Code Playgroud)

[编辑]

上述解决方案仅适用于原始问题中的点是小数点的情况.然而OP的评论意味着它的目的是千分之一.

在这种情况下,没有单行解决方案(Javascript没有内置),但它可以通过相当短的功能实现.

这里有一个很好的例子:http://www.mredkj.com/javascript/numberFormat.html#addcommas

或者,printf()可以在此处找到更复杂的字符串格式化函数,该函数模仿C语言中的函数:http://www.diveintojavascript.com/projects/javascript-sprintf


ihs*_*san 16

这是用于数字分组的很酷的正则表达式样式:

thenumber.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1.");
Run Code Online (Sandbox Code Playgroud)

  • @Mowd 您可以将 `"$1."` 中的点替换为 `,` (2认同)

jus*_*tkt 8

有一个插件,jquery-formatcurrency.

您可以为自定义格式设置小数点分隔符(默认值.)和货币符号(默认值$),也可以使用内置的国际支持.印度尼西亚语(印度尼西亚语) - 印尼语(印度尼西亚语)编码ID-ID的格式与您提供的格式最接近.

  • 我避免使用插件,因为我只需要简单的方法,并想知道如何在jQuery中的逻辑:) (2认同)

Dul*_*sta 7

您可以使用这种方式来格式化您需要的货币。

\n\n
var xx = new Intl.NumberFormat(\xe2\x80\x98en-US\xe2\x80\x99, {\n  style: \xe2\x80\x98currency\xe2\x80\x99,\n  currency: \xe2\x80\x98USD\xe2\x80\x99,\n  minimumFractionDigits: 2,\n  maximumFractionDigits: 2\n});\nxx.format(123456.789); // \xe2\x80\x98$123,456.79\xe2\x80\x99\n
Run Code Online (Sandbox Code Playgroud)\n\n

欲了解更多信息,您可以访问此链接。

\n\n

https://www.justinmccandless.com/post/formatting-currency-in-javascript/

\n


小智 6

var input=950000; 
var output=parseInt(input).toLocaleString(); 
alert(output);
Run Code Online (Sandbox Code Playgroud)