Lin*_*TED 0 javascript arrays jquery json object
通过JSON调用,我得到了这个JSON对象:
[
{
"feeding_id": 14,
"supp_name": "Test 1",
"supp_weight": 20000,
},
{
"feeding_id": 14,
"supp_name": "Test 2",
"supp_weight": 1000,
},
{
"feeding_id": 12,
"supp_name": "Test 1",
"supp_weight": 4664,
},
{
"feeding_id": 12,
"supp_name": "Test 2",
"supp_weight": 2332,
}
]
Run Code Online (Sandbox Code Playgroud)
我想要实现的是创建一个这样的表:
______________________
| 14 | Test 1 | 20000 |
| | Test 2 | 1000 |
|____|________|_______|
| 12 | Test 1 | 4664 |
| | Test 2 | 2332 |
|____|________|_______|
Run Code Online (Sandbox Code Playgroud)
我更像是一个PHP家伙.所以我试图循环Object并将其放入一个新的Object/Array(在PHP中$array[] = array( ... )).但我无法在Javascript/jQuery中完成它.
有人可以在途中帮助我吗?
假设supp_name每个都是唯一的feeding_id,您可以使用以下代码(jsonData表示您的原始JSON数组):
var result = jsonData.reduce( function(acc,rec) {
if (!(rec.feeding_id in acc)) acc[rec.feeding_id] = {};
acc[rec.feeding_id][rec.supp_name]=rec.supp_weight;
return acc;
}, {} );
Run Code Online (Sandbox Code Playgroud)