js中toFixed 并不是你想的那样进行四舍五入

简介: js中toFixed 并不是你想的那样进行四舍五入

toFixed 的简单介绍

toFixed() 方法可把 Number 类型的数字通过四舍五入为指定小数位的字符串。(将数字类型转化为字符串类型)
也就是说toFixed只能够处理数字类型的. 字符串类型的要报错. '1.23456'.toFixed(2) 会报错
toFixed 输出的类型是字符串类型的。
我们可以通过隐式(* - /)转换为数字类型的

toFixed的使用

var a = 1.23956;
console.log('a:', a.toFixed(2)); // 输出1.24,保留两位小数
// 取整数。不保留任何小数。在取整的时候也是四舍五入。
var num = 5.456789;
var n=num.toFixed()
console.log('n', n) //输出5
// 转化为一个指定小数点后的位数数字
var num1 = 5.56789;
var n1=num1.toFixed(10);
console.log('n1',n1) //输出5.5678900000

toFixed()方法并不完全是四舍五入哦~

let num= 1.15;
console.log(num.toFixed(1));
// 输出的是"1.1" 不是 “1.2”。 说明toFixed并不完全的是是舍五入
let num2= 1.26;
console.log(num2.toFixed(1)); //输出的是1.3
let num3= 1.24;
console.log(num3.toFixed(1)); //输出的是1.2
怎么回事?你刚刚不是说number.toFixed()是四舍五入吗?现在咋个不是这样了。
我也不给各位“大老爷们”兜圈子了。
其实 number.toFixed()4舍6入,5看情况。

toFixed() 是4舍6入,5看情况

let num= 1.15;
console.log(num.toFixed(1));
// 输出的是"1.1"
let num2= 1.25;
console.log(num2.toFixed(1)); //输出的是 “1.3”
看清楚了吗?有些时候5是舍有些时候5是入。

遇见问题,这是你成长的机会,如果你能够解决,这就是收获。

相关文章
|
1月前
|
JavaScript 数据处理
JS 取整
JS 取整
|
JavaScript
JS之保留两位小数不进行四舍五入
JS之保留两位小数不进行四舍五入
124 0
lodash四舍五入
lodash四舍五入
349 0
|
JavaScript 前端开发
【JavaScript】关于解决JS 计算精度问题(toFixed, Math.round, 运算表达式) !
前言 最近在做一个ERP的项目,里面涉及到了很多的计算,尤其特别是有很多关于浮点数的计算,然后就碰到了下面的问题。
435 1
|
JavaScript
JS:小数转百分数
JS:小数转百分数
|
JavaScript
js 保留两位小数不进行四舍五入
js 保留两位小数不进行四舍五入
|
JavaScript 前端开发
Javascript 四舍五入round()
Javascript 四舍五入round()
101 0
Javascript 四舍五入round()
|
JavaScript
JS中的小数四舍五入之(toFixed方法)
JS中的小数四舍五入之(toFixed方法)
90 0
JS中的小数四舍五入之(toFixed方法)