显式转换
通过手动进行类型转换,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))

博客介绍了Javascript的类型转换,包括显式转换(如转换为数值、字符串、布尔类型的函数)和隐式转换(如isNaN、运算符等)。还解释了0.1 + 0.2!= 0.3的原因是JS采用IEEE 754双精度版本,浮点数计算不精确,并给出原生解决办法。
2723

被折叠的 条评论
为什么被折叠?



