js判断对象是否为空对象的几种方法

JavaScript08

js判断对象是否为空对象的几种方法,第1张

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

var data={}

var b=(JSON.stringify(data) =='{}')

if(b==true){

    console.log('是的')

}else{

    console.log('不是')

}

2.for in 循环判断

var obj = {}

var b = function() {

for(var key in obj) {

return false

}

return true

}

alert(b())//true

4.Object.getOwnPropertyNames()方法

此方法是使用Object对象的getOwnPropertyNames方法,获取到对象中的属性名,存到一个数组中,返回数组对象,我们可以通过判断数组的length来判断此对象是否为空

注意:此方法不兼容ie8,其余浏览器没有测试

var data = {}

var arr = Object.getOwnPropertyNames(data)

alert(arr.length == 0)//true

5.使用ES6的Object.keys()方法

与4方法类似,是ES6的新方法, 返回值也是对象中属性名组成的数组

var data = {}

var arr = Object.keys(data)

alert(arr.length == 0)//true

6.Object.keys(res.data.list).map(id =>{

  let bankList = {

    code: id,

    text: res.data.list[id]

  }

  this.columns.push(bankList)

})

js 判断是否为空的代码如下:

//    var a = ""

//    var a = " "

//    var a = null

//    var a = undefined

//    var a = []

//    var a = {}

//    var a = NaN

if(a === undefined) { // 只能用 === 运算来测试某个值是否是未定义的

console.log("为undefined")

}

if(a == null) { // 等同于 a === undefined || a === null

console.log("为null")

}

// String  

if(a == "" || a == null || a == undefined){ // "",null,undefined

console.log("为空")

}

if(!a){ // "",null,undefined,NaN

console.log("为空")

}

if(!$.trim(a)){ // "",null,undefined

console.log("为空")

}

// Array

if(a.length == 0){ // "",[]

console.log("为空")

}

if(!a.length){ // "",[]

console.log("为空")

}

// Object {}

if($.isEmptyObject(a)){ // 普通对象使用 for...in 判断,有 key 即为 false

console.log("为空")

}

JavaScript程序是由若干语句组成的,语句是编写程序的指令。JavaScript提供了完整的基本编程语句,它们是:

赋值语句、switch选择语句、while循环语句、for循环语句、for each循环语句、do...while循环语句、break循环中止语句、continue循环中断语句、with语句、try…catch语句、if语句(if..else,if…else if…)。