第一周、课时7:数据类型——boolean和数据类型的转换规律

来源:互联网 发布:西安首届程序员节 编辑:程序博客网 时间:2024/05/21 06:00

boolean和数据类型的转换规律


  • !:一个叹号是取反,首先将值转换为布尔类型值,然后再取反
  • !!:将其他数据类型转换为布尔类型,相当于boolean()

数据类型值转换的规则:

1、如果只有一个值,判断这个值是真还是假,遵循:只有0,NaN、” “、null、undefined这五个值是假的,其余都是真的。
2、如果是两个值比较是否相等,遵循这个规则:
(1)、val1==val2,两个值可能不是同一个数据类型的,如果是==比较的话会进行默认的数据类型转换:

  • 对象==对象,永远不相等
  • 对象==字符串,先将对象转化为字符串(调用toString()方法),然后再进行比较。
    [ ]转化为字符串是一个空的字符串,{ }转化为字符串是[object Object]
  • 对象==布尔类型,对象先转化为字符串(toString),然后再转化为数字(Number),布尔类型也转化为数字(true是1,false是0),最后让两个数字比较
  • 对象==数字,对象先转化为字符串(toString),然后把字符串再转化为数字(Number)
  • 数字==布尔,布尔转化为数字
  • 数字==字符串,字符串转化为数字
  • 字符串==布尔,都转化为数字
  • null==undefined,结果是true
  • null或者undefined和其他任何的数据类型比较都不相等

(2)、绝对比较(===):val1===val2,如果数据类型不一样,不成立


阅读全文
0 0