js判定空配列、空オブジェクト

1192 ワード

オブジェクトが空ですか?
1.jsonオブジェクトをjson文字列に変換し、その文字列が「{}」かどうかを判断する.
var data={}var b=(JSON.strigify=""");consolone.log(b)     //true
2.for inサイクル判定
空のオブジェクトがtrueに戻るとfalseに戻ります.
var obj={}var b=function(){    for(var key in obj){        return false;         //空ではない    }     return true;consone.log(b);             //true
3.ES 6を使用するObject.keys()方法var data={};var arr=Object.keys(data);consolie.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が空の配列の場合、実行するコード
   consolone.log('配列は空です');
3.配列をjson文字列に変換し、文字列が「[]」かどうかを判断する.
let obj=[]
consolie.logs(JSON.strigify(obj)=='''     //true
4.配列はObjectタイプで、Objectタイプは等号で比較したのはメモリアドレスで、配列かどうかを先に判断してから空かどうかを判断します.
var a = []
if(Object.prototype.toString.call(a) === '[object Array]' && a.length === 0){
console.log(13)
}