Merge JSON Object with same "key" and add their "value" using JavaScript -
my json looks this
{"rows":[ {"key":["zeit.de"],"value":98}, {"key":["google.com"],"value":49}, {"key":["spiegel.de"],"value":20}, {"key":["spiegel.de"],"value":12}, {"key":["spiegel.de"],"value":20}, {"key":["spiegel.de"],"value":12}, {"key":["netmng.com"],"value":49}, {"key":["zeit.de"],"value":300} ]}
and looking solution merge same keys , add values of merged keys looking this.
{"rows":[ {"key":["zeit.de"],"value":398}, {"key":["google.com"],"value":49}, {"key":["spiegel.de"],"value":54}, {"key":["netmng.com"],"value":49} ]}
thanks answersing.
var json = '{"rows":[{"key":["zeit.de"],"value":98},{"key":["google.com"],"value":49},{"key":["spiegel.de"],"value":20},{"key":["spiegel.de"],"value":12},{"key":["spiegel.de"],"value":20},{"key":["spiegel.de"],"value":12},{"key":["netmng.com"],"value":49},{"key":["zeit.de"],"value":300}]}'; var obj = json.parse(json); var newobj = {}; for(i in obj['rows']){ var item = obj['rows'][i]; if(newobj[item.key[0]] === undefined){ newobj[item.key[0]] = 0; } newobj[item.key[0]] += item.value; } var result = {}; result.rows = []; for(i in newobj){ result.rows.push({'key':i,'value':newobj[i]}); } console.log(result);
Comments
Post a Comment