为什么console.log(true&& undefined)返回undefined而if(true&& undefined)返回false?

时间:2013-08-28 02:25:05

标签: javascript

window.onload=function(){
  if(test()&&true){
   console.log("hello");
  }
  console.log(test()&&true);
};

function test(){
}

为什么console.log(true&& undefined)返回undefined而if(true&& undefined)返回false?

2 个答案:

答案 0 :(得分:2)

if(true&&undefined)不会返回任何内容。 AND-expression true&&undefined评估为undefined以及console.log参数,并且undefined is a falsy value if statement's正文将无法执行。< / p>

答案 1 :(得分:0)

使用&&运算符时,将返回第一个falsey值。

由于undefined是假的,if语句被评估为false。