window.onload=function(){
if(test()&&true){
console.log("hello");
}
console.log(test()&&true);
};
function test(){
}
为什么 console.log(true&&undefined( 返回 undefined,而 if(true&&undefined( 返回 false?
if(true&&undefined)
不返回任何内容。AND
-expression true&&undefined
的计算结果与console.log
参数一样undefined
,并且由于undefined
是一个虚假值,因此 if 语句的主体不会被执行。
使用 &&
运算符时,返回第一个 falsey 值。
由于undefined
为假,因此if
语句被评估为假。