【发布时间】:2016-05-17 23:25:23
【问题描述】:
大家好, 我有一个案例,想要将数字四舍五入到小数点后两位。我会举一个例子和我尝试过的。
假设我有 15.07567 把它四舍五入我做了:
price = Math.round(15.07567 * 100) / 100;
// 我得到 15.08
但是,如果我们有以 0 结尾的数字(例如 15.10)并且我们想要两位小数,这就会出现问题。
price = Math.round(15.10 * 100) / 100;
//15.1
嗯,所以我尝试使用 toFixed()
price = Math.round(15.10 * 100) / 100;
total = price.toFixed(2);
// 我得到“15.10”,这很好,但它返回一个字符串,以后可能会给我带来问题,所以我尝试用以下方法解决这个问题:
price = Math.round(15.10 * 100) / 100;
total = price.toFixed(2);
Number(total) //or parseFloat(total)
// 我得到 15.1 并绕圈走?
【问题讨论】:
-
如果它是一个零 JS 丢弃它......你必须选择一个。
-
嗯,
15.10 == 15.1,除非你想要字符串中的结果..
标签: javascript numbers parsefloat rounding