js中所有Number类型的数据,有一个toFixed()方法,用来四舍五入并取小数点的位数,如:
var numer = 123.45678; numer.toFixed(2); // 表示对123.456758四舍五入后取2位小数,得到123.46 number = 8765.4321; number.toFixed(3); // 表示对8765.4321四舍五入后取3位小数,得到8765.432
? 如果你只想取小数位数且不想四舍五入,有2种方式可以实现: 1. 将数字转换位字符串,然后截取小数位数后面的字符 2. 将数字乘以小数位数对应的倍数转换位整数后,再去掉小数,如:
number = 123.456; number = number * 100; // 这里变成了12345.6 number = ~~number; // 去掉小数点后面的位数 number = number / 100; // 这时就变成了123.45,而没有四舍五入
? 以上代码可以合并为:
number = ~~(number * 100) / 100;
?