【发布时间】:2013-11-15 06:42:35
【问题描述】:
我有像下面这样从服务器获取的 json 数据
result = [
{"transactions": 7, "products__name": "mark"},
{"transactions": 12, "products__name": "vicky"},
{"transactions": 30, "products__name": "daniel"},
{"transactions": 6, "products__name": "hurray "}]
现在我想在上面的 json 响应中添加额外的项目并更改字典中的键名,我想要以下格式的结果
result = [
{ label: "mark", data: 7, color: "#4572A7"},
{ label: "vicky", data: 12, color: "#4572A7"},
{ label: "daniel", data: 30, color: "#4572A7"},
{ label: "hurray", data: 6, color: "#4572A7"},
];
我想用jquery做上面的逻辑并做了以下
var array = [];
var dictionary = {};
$.each(result, function(key,val){
dictionary['label'] = val.products__name;
dictionary['data'] = val.revenue;
dictionary['color'] = '#4572A7';
console.log(dictionary);
array.push(dictionary)
});
console.log(array);
});
所以从上面的 jquery 循环代码中,我可以遍历 json 数组并可以创建一个具有不同标签和项目的字典,但是当我将它推入 new array 时,只有起始字典被重复像同一条记录一样插入到数组中会在数组中显示 4 次
那么我的代码有什么问题,谁能告诉我需要做什么才能将不同的 dic 项推送到新数组?
【问题讨论】:
标签: jquery arrays json for-loop