对象判空
1.将对象转换为JSON字符串,判断是否为‘{}’
var b =data=> (JSON.stringify(data) == "{}");
2.for in循环对象
var b =data=> {
for(var key in data){return false;}
return true
}
3.jquery的isEmptyObject方法
var b = $.isEmptyObject(data);
4.Object.getOwnPropertyNames()方法
该方法会把对象的属性名全部收集到一个数组之中,并把数组返回,判断数组长度是否为0
var b =data=> {
if(Object.getOwnPropertyNames().length==0){
return true;
}
return false;
}
5.使用ES6的Object.keys()方法(与4的方法类似)
判断对象中是否包含某个属性
1.判断是否为undefined
if (obj2.a){
console.log("对象有此属性")
}else {
console.log("对象无此属性")
}
2.in运算符 (但是如果属性在对象的原型链上存在,那么会返回true)
let obj2 = {a:1}
if ("a" in obj2){
console.log("对象或其原型链上有此属性")
}else {
console.log("对象或其原型链上无此属性")
}
3.obj.hasOwnProperty() 对象自身属性中含有某属性,返回true。
let obj2 = {a:1}
if (obj2.hasOwnProperty("a")){
console.log("对象上有此属性")
}else {
console.log("对象上无此属性")
}