对null,undefined,' ' 取反的常见情况分析

589 阅读1分钟

1.对空数组判断

var aa=[]; 
if(aa){ 
//此时aa为真,所以继续执行 console.log(23423); 
}

2.对字面量声明的空对象判断

var bb = {}; 
if(bb){
//此时bb为真,继续执行 alert(234);
}

3.对null对象判断

var cc=null; 
if(!cc){ 
// 此时cc为假,取反为真,继续执行 alert(34); 
}

4.对undefined判断

var dd = undefined; 
if(!dd){ 
// 此时dd为假,取反为真,继续执行 alert("可以执行");
}

5.其他判断条件

console.log(null=={}); // false 
console.log(null==undefined); // true 
console.log(null===undefined); // false

6.对''进行判断

console.log(''==false); // true 
console.log(''===false); // false 

var ee=''; 
if(ee){ // 此时ee为假,不执行 alert("我是假的我不执行!") } 

var ee=''; 
if(!ee){ // 此时ee为假,取反为真执行 alert("我现在是真的了,开始执行!") }