我有下面的代码。我想让它这样,如果price_result等于一个整数,比如10,然后我想加两位小数点后。所以10就是10.00。 如果等于10.6,就是10.60。不知道该怎么做。
price_result = parseFloat(test_var.split('$')[1].slice(0,-1));
我有下面的代码。我想让它这样,如果price_result等于一个整数,比如10,然后我想加两位小数点后。所以10就是10.00。 如果等于10.6,就是10.60。不知道该怎么做。
price_result = parseFloat(test_var.split('$')[1].slice(0,-1));
当前回答
要返回一个数字,添加另一层圆括号。保持清洁。
var twoPlacedFloat = parseFloat((10.02745).toFixed(2));
其他回答
如果你需要性能(游戏邦注:比如在游戏中):
Math.round(number * 100) / 100
它大约是parseFloat(number.toFixed(2))速度的100倍。
http://jsperf.com/parsefloat-tofixed-vs-math-round
我有其他的解。
你可以使用round()来代替toFixed()
var twoPlacedFloat = parseFloat(yourString).round(2)
下面是对我有效的解决方案
parseFloat(value)
@sd 简单的回答:在JS中没有办法有数字数据类型的值与小数后面的零。
长回答:它是JavaScript的属性toFixed或toPrecision函数,用于返回String。这样做的原因是数字数据类型不能有像a = 2.00这样的值,它总是会删除小数后面的零,这是数字数据类型的内置属性。因此,要在JS中实现上述目标,我们有两个选择
要么使用数据作为字符串,要么 同意在ex2.50 -> 2.5结尾使用大小写为“0”的截断值。
来自洛达什的西尔可能是最好的
_.ceil("315.9250488",2)
_.ceil(315.9250488,2)
_.ceil(undefined,2)
_.ceil(null,2)
_.ceil("",2)
也会工作与一个数字,它是安全的