Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Join JSON Object member string values together

"category": [{
      "id": 28,
      "name": "Dogs"
  },
  {
      "id": 14,
      "name": "Cats"
  },
  {
      "id": 878,
      "name": "Sheep"
  }],

I have the above JSON parsed (using .ajax and jsonp as callback) and I would like to join all the values of "name" into a string. i.e. "Dogs, Cats, Sheep". How can I do this? I have tried simple join on "category" and name, i.e.

var cats = categories.join(", ");

OR

var cats = categories.name.join(", ");

But since we are looking at it's members and their string values, it doesn't work.

like image 303
0pt1m1z3 Avatar asked Dec 12 '22 23:12

0pt1m1z3


2 Answers

This looks like a job for $.map!

var data = {
    "category": [{
          "id": 28,
          "name": "Dogs"
      },
      {
          "id": 14,
          "name": "Cats"
      },
      {
          "id": 878,
          "name": "Sheep"
      }]
}

var cats = $.map(data.category, function(v){
    return v.name;
}).join(', ');
like image 57
Rocket Hazmat Avatar answered Dec 27 '22 18:12

Rocket Hazmat


var text = "";
for(var i=0; category.length; i++)
{
   text += category[i].name;
   if(i!=category.length-1)
       text += ", ";
}
like image 23
Barış Uşaklı Avatar answered Dec 27 '22 18:12

Barış Uşaklı