在异步请求中我们常常要对后台返回的数据进行判断
当然后台会返回成功状态的数值比如下图:
成功的时候可以这么判断data.data.length==0,然后再做后续的操作,但也会碰到其他的返回结果比如是个对象?
这个时候就如果单纯的通过返回状态和length ==0 就无法满足业务需求
if(data.errCode==0){ // 成功的时候需要做什么 if(data.data.length ==0){ //这个时候 如果data.data是一个对象的话data.data.length就会报错 } }else{ } 所以完善的判断才能满足业务需求,所以这个时候就需要先了解怎么判断对象为空
判断对象为空
方法一:
var obj = {}; JSON.stringify(a) =="{}" //true
方法二:
var obj = {}; function b() { for(var key in obj) { return false; } return true; }
方法二:
var obj = {}; 方法三: Object.keys(obj ).length == 0
if(data.errCode==0){ // 成功的时候需要做什么 let check = JSON.stringify(data.data) ; if(check =="{}"||check =="[]"||check =="null"){ return alert( "返回数据为空,给予提示") }else{ //业务逻辑 } }else{ } 当然这个方式适合了很多的数据返回格式, 但也有一些比较奇葩的格式,具体还要视情况而定,但也离不开判断数组和对象。