js 自动类型转换

js自动类型转换

  • 1.==符号在判断左右两边数据是否相等时,如果数据类型一致,直接比较值即可
  • 2.==符号左右数据类型不一致时,如果两方数据为布尔型、数值型、字符串型时,不为数字的那一方自动调用Number()方法
  • 3.undefined和null这两者互相相等,及自身也相等,除此之外和谁都不想等
  • 4.NaN比较特殊,他和自己都不相等
  • 5.当数值型、字符串型、布尔型和对象进行比较时,对象调用toString()方法得到一个字符串
  • 6.对象和对象进行比较时,直接比较内存地址
  • 7.任何对象加!强制转false

参考函数:

转换为数值类型:Number(mix)


– 如果是布尔值,true和false分别被转换为1和0
– 如果是数字值,返回本身。
– 如果是null,返回0.
– 如果是undefined,返回NaN。
– 如果是字符串,遵循以下规则:
• 如果字符串中只包含数字,则将其转换为十进制(忽略前导0)
• 如果字符串中包含有效的浮点格式,将其转换为浮点数值(忽略前导0)
• 如果是空字符串,将其转换为0
• 如果字符串中包含非以上格式,则将其转换为NaN ‘ssd2342df’


• 转换为字符串类型:String(mix)


– 如果是null,返回”null”
– 如果是undefined,返回”undefined”


• 转换为布尔类型:Boolean(mix)


– 以下值会被转换为false:false、””、0、NaN、null、undefined,其余任何值都会
被转换为true

原文地址:https://www.cnblogs.com/heviny/p/10792442.html