js判断空数组,空对象

判断对象是否为空对象

1.将json对象转化为json字符串,再判断该字符串是否为"{}"

var data = {};
var b = (JSON.stringify(data) == "{}");
console.log(b);     //true

2.for in 循环判断

如果是空对象返回true, 否则返回 false 。

var obj = {};
var b = function() {
    for(var key in obj) {
        return false;          //不为空
    }
    return true;
}
console.log(b());              //true

3.使用ES6的Object.keys()方法
var data = {};
var arr = Object.keys(data);
console.log(arr.length == 0);      //true 

判断数组是否为空数组

1.判断数组长度length是否为0

let arr = [];
if (arr.length == 0){
   console.log("数组为空")
}else {
   console.log("数组不为空")
}

2.通过data == false 来判断数组为空

在数组直接与布尔类型比较的时候,默认都是将数组和布尔类型都转化为Number类型比较,空数组转化为Number类型的时候为0

let data = [];
if(data == false){
   //data为空数组时,要执行的代码

   console.log('数组为空');
}

3.将数组转化为json字符串,再判断该字符串是否为"[]"

let obj = [];

console.log(JSON.stringify(obj) === '[]')     //true

4.数组是Object类型,Object类型用等号比较的是内存地址,可以先判断是否为数组,再判断是否为空

var a = []
if(Object.prototype.toString.call(a) === '[object Array]' && a.length === 0){
console.log(13)
}

 

你可能感兴趣的:(js判断空数组,空对象)