弱类型对“||” 和 “&&”的处理

在javascript中数据类型可以分为“真值“和“假值”。顾名思义,真值转换为bool时值为true,假值转换为bool时值为false。常见数据转换为bool时的值:

null        false
undefined    false
object     true
function  true
0            false
除0数字   true
非空字符串     true
“”           false

javascript是弱类型语言,所以“||”和”&&”两个表达式跟其他语言有些不同:

&&:如果左侧表达式为真值,则返回右侧表达式的值,否则返回左侧表达式的值

||  :如果左侧表达式为真值,则返回左侧表达式的值;否则返回右侧表达式的值

稍微想想,这个运算法则是适用于bool值间的运算的,算是一种兼容其他数据类型的算法

猜你喜欢

转载自xiaoxiaoher.iteye.com/blog/2380107