# 类型转换

在js中转换的情况只有3种

  1. 转成Boolean
  2. 转成Number
  3. 转成String

# 转换的规则

  • 转Boolean 在条件判断时,除了 undefinednullfalseNaN''0-0,其他所有值都转为 true,包括所有对象

  • 四则运算

    • 加法运算

      1. 运算中其中一方为字符串,那么就会把另一方也转换为字符串
      1 + '1' // '11'
      
      1. 如果一方不是字符串或者数字,那么会将它转换为数字或者字符串
      true + true // 2 -> true会转成1
      4 + [1, 2, 3] // '41,2,3' -> 数组转成了字符串
      
      1. 注意这个表达式: 'a' + + 'a'
      'a' + + 'a'  // 'aNaN'
      

      但是如果是数字字符串的话结果又会不一样

      '1' + + '1'   // '11'
      
    • 减、乘、除、取余运算 与加法最大的不同在于,在做这些运算时都会转成数字

Last Updated: 7/2/2021, 5:58:11 PM