toFixed()只用于Number类型,可把 Number类型 四舍五入为指定小数位数的数字
。对于string类型的数据( 开发中一般是 全数字的字符串
或者 数字带有小数点的字符串
)要想使用 toFixed()的话,必须先用parseInt()或parseFloat()或Number()函数转成Number类型,然后再使用 toFixed()。所以对于报.toFixed is not a function错误也就是这个原因了。
错误演示,只演示一种
var strNum = "774.42627";
var fomatFixed = strNum.toFixed(2);
console.log(fomatFixed);
正确演示(parseFloat->toFixed)
写法一
var strNum = "774.42627";
var fomatFloat = parseFloat(strNum);// 先转成parseFloat
console.log("fomatFloat内容为",fomatFloat);
var fomatFixed = fomatFloat.toFixed(2);// toFixed四舍五入保留2位小数
console.log("利用toFixed四舍五入保留2位小数,fomatFixed的内容为",fomatFixed);
写法二
var strNum = "774.42627";
var fomatFixed = parseFloat(strNum).toFixed(2);// toFixed四舍五入保留2位小数
console.log("利用toFixed四舍五入保留2位小数,fomatFixed的内容为", fomatFixed);
正确演示(parseInt->toFixed)
写法一
var strNum = "774.62627";
var fomatInt = parseInt(strNum);// 先转成parseInt
console.log("fomatInt内容为", fomatInt);
var fomatFixed = fomatInt.toFixed(2);// toFixed四舍五入保留2位小数
console.log("利用toFixed四舍五入保留2位小数,fomatFixed的内容为", fomatFixed);
写法二
var strNum = "774.62627";
var fomatFixed = parseInt(strNum).toFixed(2);// toFixed四舍五入保留2位小数
console.log("利用toFixed四舍五入保留2位小数,fomatFixed的内容为", fomatFixed);
正确演示(Number->toFixed)
写法一
var strNum = "774.62627";
var fomatNumber = Number(strNum);// Number
console.log("fomatNumber", fomatNumber);
var fomatFixed = fomatNumber.toFixed(2);// toFixed四舍五入保留2位小数
console.log("利用toFixed四舍五入保留2位小数,fomatFixed的内容为", fomatFixed);
写法二
var strNum = "774.62627";
var fomatFixed = Number(strNum).toFixed(2);// toFixed四舍五入保留2位小数
console.log("利用toFixed四舍五入保留2位小数,fomatFixed的内容为", fomatFixed);