Phi*_*mes 4 javascript ajax jquery json
我有两个JSON提要.一个包含有关课程的基本信息,第二个包含更具管理性质的信息.这是我的意思的样本.
第一
{"courses":
{"course":{"id":"4","title":"Using a computer","body":"36"}}
,{"course":{"id":"5","title":"Job hunting online","body":"29"}}
}
Run Code Online (Sandbox Code Playgroud)
第二
{"courses":
{"4": {"id":4,"name":"Online Basics","title":"Using a computer","shortname":"onlinebasics","height":640,"width":980,"html5":1,"url":"\/sites\/default\/files\/courses\/onlinebasics\/wrapper.html","started_on":"","bundle_only":true,"progress":false,"completed_on":"2012\/10\/31 00:12:39","on_planner":true}
,"5": {"id":5,"name":"Online Basics","title":"OB2 Job hunting online","shortname":"onlinebasics","height":640,"width":980,"html5":1,"url":"\/sites\/default\/files\/courses\/onlinebasics\/wrapper.html","started_on":"","bundle_only":true,"progress":false,"completed_on":"2012\/11\/24 02:14:51","on_planner":false}
}
}
Run Code Online (Sandbox Code Playgroud)
期望的输出
{"courses":
{"course":{"id":"4","title":"Using a computer","body":"36","name":"Online Basics","title":"Using a computer","shortname":"onlinebasics","height":640,"width":980,"html5":1,"url":"\/sites\/default\/files\/courses\/onlinebasics\/wrapper.html","started_on":"","bundle_only":true,"progress":false,"completed_on":"2012\/10\/31 00:12:39","on_planner":true}}
}
Run Code Online (Sandbox Code Playgroud)
我希望添加"所需输出"选项将使其更容易理解.尽管我只将1个示例放入所需的输出区域,但我想要将id匹配的所有记录合并.
有什么建议?
谢谢.
$.when($.get("feed1.json"), $.get("feed2.json")).done(function(basics, admin) {
var basiccourses = basics[0].courses,
admincourses = admins[0].courses;
// merge all basic course objects into the admin courses object
for (var i=0; i<basiccourses.length; i++) {
var basic = basiccourses[i];
if (basic.id in admincourses)
// by extending the course object
$.extend(admincourses[basic.id], basic);
else
// or just copying it over
admincourses[basic.id] = basic;
}
// now admincourses has all information combined
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2668 次 |
| 最近记录: |