我想用JavaScript格式化价格.
我想要一个函数,它接受一个float参数并返回如下string格式:
"$ 2,500.00"
Run Code Online (Sandbox Code Playgroud)
最好的方法是什么?
是否有JavaScript的内置函数将字符串转换为货币格式?
例如
var a = '1234';
a.convertToCurrency(); // return $1,234
Run Code Online (Sandbox Code Playgroud)
UPDATE
请注意,我希望函数返回货币以包括美国逗号到组数字.
这似乎是有人在2009年已经解决的一个问题,但我找不到一个像这样的数字的体面的JavaScript库:
12345.58
并根据特定文化(即"nl-nl")或ISO货币代码正确格式化.
dojo显示了承诺,但默认情况下它不包含许多文化,实际上在我的测试中没有正常工作.
当我运行时,我基本上想要一些100%或接近100%相当于.NET为我做的事情:
String.Format([cultureInfo Object],"{0:N}",myValue)'代表数字
和
String.Format([cultureInfo对象],"{0:C}",myValue)'用于货币
我有一些价格值要显示在我的页面中。
我正在编写一个函数,它采用浮动价格并返回带有货币代码的格式化货币值。
像 fnPrice(
1001.01) 应该打印$ 1,000.01。
我想用javascript计算.计算的某些部分不起作用.
我想用折扣计算总价.例如:当价格= 10.00且折扣= 50(%)
我需要计算:10.00*0,50
所以我需要这样的东西:
var totalValue = numVal1 / 0, numVal2
Run Code Online (Sandbox Code Playgroud)
当我这样做时,脚本无法正常工作.我怎样才能解决这个问题?
这是我的完整代码:
function getPrice() {
var numVal1 = Number(document.getElementById("price").value);
var numVal2 = Number(document.getElementById("discount").value);
var totalValue = numVal1 / numVal2
document.getElementById("total").value = totalValue.toFixed(2);
}
Run Code Online (Sandbox Code Playgroud) 我正在为德国客户开发一个网站.在德国,他们使用逗号作为小数分隔符.
我使用WebMethod从SQL获取值,然后构建一个JSON对象以显示网站上的数据.使用C#SqlCommand,我将SQL中的值作为字符串获取.我想将此值保存为double变量.
这是代码示例,显示了我想要做的事情:
NumberFormatInfo nfi = new CultureInfo( "de-DE", false ).NumberFormat;
nfi.NumberDecimalSeparator = ","; // Displays the value with a comma as the separator.
string value ="15.95"; //value from SQL
string valueInString = "";
double valueInDouble = 0;
valueInString = Convert.ToDouble(value.ToString()).ToString( "N", nfi );
valueInDouble = Convert.ToDouble(value.ToString()).ToString( "N", nfi ); //Error
valueInDouble = Convert.ToDouble(valueInString,nfi);
Console.WriteLine( valueInString ); // returns 15,95. But it is a string
Console.WriteLine( valueInDouble ); // returns 15.95. the comma is reverted back to dot
Run Code Online (Sandbox Code Playgroud)
我需要将数据保存为double.我该如何解决这个问题?