在js中0为空(false) ,代表空的还有“”,null ,undefined;
如果做判断if(!上面的四种值);返回均为false
console.log(!null);// true
console.log(!0);//true
console.log(!"");// true
console.log(!undefined);// true
console.log(0=="");//true
console.log(0==" ");// true
console.log(undefined==null);// true
var val=0; //undefined
console.log(val=='');//true
var val='0'; //undefined
console.log(val=='');//false
console.log(0==undefined);//false
console.log('0'==undefined);//false
在对接收的参数进行判断时一定注意 :当参数取值既有0也有‘’时要小心区分
console.log(typeof null) //object
console.log(typeof {}) //object
console.log(null == {}) //false
var tem1 = null;
var tem2 = {};
console.log(tem2.length); //undefined
console.log(tem1.length); //报错Cannot read property 'length' of null
如何判断是否为空对象。
console.log(tem1==null);//true,因此可以用该方法判断为null对象
console.log(tem2=={});//false,不能这样判断{}对象 应该用下面的方式
console.log(JSON.stringify(tem2) == "{}")//ture