var value= "200,000.00 $";
var ft_PriceTotal = eval(value.replace(" $", ""));
我无法弄清楚为什么会出现此错误missing , after statement
有谁能告诉我如何解决这个错误?
答案 0 :(得分:3)
由于eval
运行代码,并且您要求它运行代码"200,000.00"
。
如果您的目标是将该字符串解析为数字,请使用parseFloat
,但您也要删除逗号:
var value= "200,000.00 $";
var ft_PriceTotal = parseFloat(value.replace(/[ $,]/g, ""));
或+
也有效:
var value= "200,000.00 $";
var ft_PriceTotal = +value.replace(/[ $,]/g, "");
区别在于parseFloat
将从找到的第一个非数字字符开始停止,但+
要求整个字符串为数字。因此parseFloat("123.4xyz")
为123.4
,但+"123.4xyz"
为NaN
。
请注意,这假定,
是千位分隔符,就像在您的示例中一样。许多国家/地区使用,
作为小数分隔符,因此上述内容不适合它们。但是您的示例使用,
成千上万,所以......