Restructure JSON
javascript, jquery, json
Solution
I can only assume that you want this:
var arr = JSON.parse(response); // or something like that (assuming valid JSON)
// or just assign the array literal
var result = {};
for (var i=0; i<arr.length; i++) {
var date = arr[i].date,
sales = arr[i].sales;
if (date in result)
result[date].push(sales);
else
result[date] = [sales];
}
Problem
I now have a JSON response from the server like, but i want to restructure it, according to dates. for e.g i now have ``` { "items": [ { "A": [ { "name": "a", "date": "2/10/2010", "sales": "100" }, { "name": "b", "date": "6/10/2010", "sales": "400" } ], "B": [ { "name": "c", "date": "2/10/2010", "sales": "1000" }, { "name": "d", "date": "6/10/2010", "sales": "400" } ] }, { "C": [ { "name": "a", "date": "10/10/2010", "sales": "100" }, { "name": "b", "date": "6/10/2010", "sales": "100" } ], "D": [ { "name": "c", "date": "2/10/2010", "sales": "300" }, { "name": "c", "date": "2/10/2010", "sales": "1100" } ] } ] } ``` but now i want to restructure by dates, for a particular day need to know all the sales to have like, ``` { "date1" : [sales, sales, sales], "date2" : [sales, sales], "date3" : [sales] } ``` how can this be done?