Javascript - check for an object

I am trying to create for javascript / jquery test to check if my object is empty and cannot understand.

Here is an object when there is something in it:

{"mergedSellerArray":{"key1114":"1120"}}

And here is the object when empty:

{"mergedSellerArray":{}}

This is an ongoing test based on another SO answer, but it does not work:

var sellers = JSON.stringify({mergedSellerArray});
if(Object.keys(sellers).length === 0 && sellers.constructor === Object) {
    console.log("sellers is empty!");
}
+4
source share
2 answers

You tested sellers, which is not empty, because it contains mergedSellerArray. You need to checksellers.mergedSellerArray

let sellers = {
  "mergedSellerArray": {}
};
if (Object.keys(sellers.mergedSellerArray).length === 0 && sellers.mergedSellerArray.constructor === Object) {
  console.log("sellers is empty!");
} else {
  console.log("sellers is not empty !");
}
Run codeHide result
+17
source

Here in jQuery:

$(document).ready(function(){
	var obj={"mergedSellerArray":{}};
	alert("is empty: "+$.isEmptyObject(obj.mergedSellerArray));

        var obj2={"mergedSellerArray":{"key1114":"1120"}};
	alert("is empty: "+$.isEmptyObject(obj2.mergedSellerArray));
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Run codeHide result

jsfidle: https://jsfiddle.net/nyqgbp38/

0
source

Source: https://habr.com/ru/post/1672373/


All Articles