显式转换
通过手动进行类型转换,Javascript提供了以下转型函数:
- 转换为数值类型:Number(mix)、parseInt(string,radix)、parseFloat(string)
- 转换为字符串类型:toString(radix)、String(mix)
- 转换为布尔类型:Boolean(mix)
隐式转换
- isNaN(mix)
- 递增递减操作符(包括前置和后置)、一元正负符号操作符
- 加法运算操作符
- 乘除、减号运算符、取模运算符
- 逻辑操作符(!、&&、||) 逻辑非(!)操作符
- 关系操作符(<, >, <=, >=)
- 相等操作符(==)
4、为什么 0.1+0.2 != 0.3 ?
因为 JS 采用 IEEE 754 双精度版本(64位),并且只要采用 IEEE 754 的语言都有该问题,所以浮点数计算是不精确的。
下面可以用原生解决 0.1+0.2 的问题:
parseFloat((0.1 + 0.2).toFixed(10))