# 类型转换
在js中转换的情况只有3种
- 转成Boolean
- 转成Number
- 转成String
# 转换的规则
转Boolean 在条件判断时,除了
undefined
、null
、false
、NaN
、''
、0
、-0
,其他所有值都转为true
,包括所有对象四则运算
加法运算
- 运算中其中一方为字符串,那么就会把另一方也转换为字符串
1 + '1' // '11'
- 如果一方不是字符串或者数字,那么会将它转换为数字或者字符串
true + true // 2 -> true会转成1 4 + [1, 2, 3] // '41,2,3' -> 数组转成了字符串
- 注意这个表达式: 'a' + + 'a'
'a' + + 'a' // 'aNaN'
但是如果是数字字符串的话结果又会不一样
'1' + + '1' // '11'
减、乘、除、取余运算 与加法最大的不同在于,在做这些运算时都会转成数字