js中0为空(false) ,代表空的还有“”,null ,undefined

在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
上一篇:dva处理_umi项目中dva effects异常处理


下一篇:h5接入微信分享sdk,报错Cannot read property of undefined (reading 'title')