Search for json array for a specific attribute

advertisements

Actually I want to search an attribute's value in an json array for one of its child. Now one condition is that the attribute will not be there in all the child's of the array. This is my json array.

[{
      "heading1":"heading1",
      "heading2":"heading2",
      "heading3":"heading3",
      "heading4":"heading4",
      "heading5":"heading5",
      "heading6":"heading6"
   },
   {
      "column1":65536,
      "column2":"school",
      "column3":"testing purpose",
      "column4":"DESKTOP",
      "column5":"ACTIVE",
      "column6":true,
      "column7":"a6cc82e0-a8d8-49b8-af62-cf8ca042c8bb"     

   },
   {
      "column1":98305,
      "column2":"Nikhil",
      "column3":"Test",
      "column4":"LAPTOP",
      "column5":"ACTIVE",
      "column6":true,
      "column7":"a6cc82e0-a8d8-49b8-af62-cf8ca042c8bb"

   }]

So presently I am working with the each loop but like this

var obj = $.parseJSON(JSON.stringify(response));
$.each(obj, function () {
    console.log("heading1", this['heading1']);
});

Here response comes from mserver and it is the json array

Now I want to know can I search for this attribute in the json array without using a loop in jQuery.


Based on your sample code what I understand you have is an array of objects and you want to find objects with one specific property and or value:

This will return true if the object has the property

var results= arr.filter(function(item){ return item.hasOwnProperty("column5");  });

Or you can perform additional action when you find the property:

arr.filter(function(item){
   if (item.hasOwnProperty("column5")) {
        return item["column5"] === 'demo 01'; //or item.column5 === 'demo 01'
   }
   return false;
 });