我想用JavaScript格式化价格.
我想要一个函数,它接受一个float参数并返回如下string格式:
"$ 2,500.00"
Run Code Online (Sandbox Code Playgroud)
最好的方法是什么?
我的一位同事偶然发现了一种方法来使用按位或者:
var a = 13.6 | 0; //a == 13
Run Code Online (Sandbox Code Playgroud)
我们在谈论它并想知道一些事情.
Math.floor吗?也许它快一点?(双关语不打算)谢谢.
所以我正在编写一个小帮手方法,将数字转换为有效的货币格式($xx,xxx.xx).toLocaleString().在Chrome中使用它时,一切都按预期工作,但在Node.js中使用时似乎完全坏了.
例:
var n = 6000
console.log( n.toLocaleString('USD', {
style: 'currency',
currency: "USD",
minimumFractionDigits : 2,
maximumFractionDigits : 2
}) );
Run Code Online (Sandbox Code Playgroud)
如果您在浏览器中运行它,它会打印出来$6,000.00.如果您在Node.js REPL或应用程序中运行此代码段,它将返回6000为String.
猜猜这是Node.js的一个错误?你可以在这附近做一些工作吗?
我想在 EditText 输入中添加逗号或每 3 位点。
例子 :
可能重复:
如何使用javascript格式化数字?
我想.在JavaScript中为一个数字添加一千个分隔符.
Run Code Online (Sandbox Code Playgroud)1000 -> 1.000 1000000 -> 1.000.000
最优雅的方式是什么?
我最近在回答另一个StackOverflow问题时想出了这段代码.基本上,在模糊的情况下,此代码将正确地用逗号分隔数千,并将小数保留为两位数(如美元的编写方式[7,745.56]).
我想知道是否有更简洁的方法使用正则表达式,分离和切断过多的小数位.我最近用最近的尝试更新了这篇文章.使用正则表达式有更好的方法吗?
7456 -> 7,456
45345 -> 45,345
25.23523534 -> 25.23
3333.239 -> 3,333.23
234.99 -> 234.99
2300.99 -> 2,300.99
23123123123.22 -> 23,123,123,123.22
Run Code Online (Sandbox Code Playgroud)
var result;
var str = []
reg = new RegExp(/(\d*(\d{2}\.)|\d{1,3})/, "gi");
reversed = "9515321312.2323432".split("").reverse().join("")
while (result = reg.exec(reversed)) {
str.push(result[2] ? result[2] : result[0])
}
console.log(str.join(",").split("").reverse().join("").replace(",.","."))Run Code Online (Sandbox Code Playgroud)
如何在 JavaScript 中的数字中添加逗号?例如我想在这个数字中添加逗号 1445456523.56594