js中数字与字符串的相互转换

数字转换为字符串的方法:

  • number + '' JS变量弱类型特点进行转换
  • number.toString() 转换函数
  • String(number) 强制类型转换
(1) 123 + ''
(2) var a = 123;
console.log(typeof(a.toString()))
(3) String(123)

字符串转换为数字的方法:

  • Number(value) 把给定的值转换成数字(可以是整数或浮点数)
  • parseInt(value) 把值转换为整数 只对string有效
  • parseFloat(value) 把值转换为浮点数 只对string有效
    如果解析不到数字,则将返回一个NaN的值

向下取整,向上取整,四舍五入:

Math.floor(123.123)  //123 向下取整
Math.ceil(123.123)  //124 向上取整
Math.round(123.523) //124 四舍五入

其它:
toFixed()方法可以把一个数字转换为字符串,并且显示小数点后的指定的位数,但是它的精度计算有问题

let a = 1.234
a.toFixed(2) //1.23 正确
 
let a = 1.235
a.toFixed(2) //1.24 正确
 
let a = 1.236
a.toFixed(2) //1.24 正确
 
let a = 0.234
a.toFixed(2) //0.23 正确
 
let a = 0.235
a.toFixed(2) //0.23 错误 X

let a = 0.236
a.toFixed(2) //0.24 正确

当a < 0 ,且需要判断是否进位的那位是5时,这一位会没有进位。

你可能感兴趣的:(js中数字与字符串的相互转换)