此函数将数字四舍五入到两位小数,并确保返回值具有两位小数。例如,12.006 将返回 12.01,.3 将返回 0.30,而 5 将返回 5.00。
function CurrencyFormatted(amount) {
var i = parseFloat(amount);
if(isNaN(i)) { i = 0.00; }
var minus = '';
if(i < 0) { minus = '-'; }
i = Math.abs(i);
i = parseInt((i + .005) * 100);
i = i / 100;
s = new String(i);
if(s.indexOf('.') < 0) { s += '.00'; }
if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
s = minus + s;
return s;
}
如果您想要一个更小的函数
如果您想要一个更小、更内联的替代方案,您可以这样做
-Chase
嘿,这是来自未来的我。我重新审视了这一点,并进一步改进了它
function currency(n){n=parseFloat(n);return isNaN(n)?false:n.toFixed(2);}
这是一个 CSS 技巧吗?
大家好!!
有没有办法在输入数字时添加逗号?并且我们可以编辑所有数字。
例如:123,456,555,我们可以编辑数字 1 -> 6
谢谢
在 keyup 时检查字段的长度。如果它大于 4 且不包含句点,则在从右起每 3 个数字后添加一个逗号。遇到句点时,设置一个标志以停止格式化。
// 带有千位分隔符的逗号
function format_currency(amount){
var i = parseFloat(amount);
if(isNaN(i)) { i = 0.00; }
var minus = ”;
if(i < 0) { minus = ‘-‘; }
i = Math.abs(i);
i = parseInt((i + .005) * 100);
i = i / 100;
s = Number(i).toLocaleString(‘en’);
if(s.indexOf(‘.’) < 0) { s += ‘.00’; }
if(s.indexOf(‘.’) == (s.length – 2)) { s += ‘0’; }
s = minus + s;
return s
}
网站名称是 css-tricks,但您给出了 Java 解决方案?
http://stackoverflow.com/questions/245062/whats-the-difference-between-javascript-and-java
他没有给出 Java 解决方案,他给出了 JavaScript 解决方案。;)
谢谢
我想在我的网站上添加自动价格更改功能。
请查看我的网站:http://www.phonegallery.in
就我个人而言,我更喜欢使用 currencyFormatter.js (https://osrec.github.io/currencyFormatter.js/)。跨浏览器且轻量级。可以根据货币和/或语言环境格式化数字
function formateIndianCurrency(rupees) {
}
截至 2018 年,此功能已内置于
Number.toLocaleString
中还有一个额外的选项
currencyDisplay
,它默认为symbol
并显示currency
的相应符号。我有多个 JavaScript 变量、输入和输出。我认为在稍后我想再次将变量用于另一个计算时,格式化输出会更容易。(或者您可以确认尝试将“12345”与“12,345.00”相乘(由于逗号和句点符号)是否不会以任何方式混淆计算?12345 * 12,345.00 = ?)
我不确定如何实现此货币格式。例如,如何将我的输出传递给货币格式?MyOutputAmount 的计算已完成,我正在使用“span”作为输出。
值中的逗号表示它是一个字符串。您只想在显示值时使用这些函数,而不是在进行进一步计算时使用。
啊,是的,当然。老实说,这很有道理。
但是,我如何将此函数应用于我的 span 输出?