我需要在angularJS中合并2个对象
我正在尝试使用angular.merge(obj1,obj2),但这不是我期望的
第一个对象
// obj1
{
"0": {
"name": "340.jpg",
"bytes": 21955,
"link": "340.jpg?dl=0",
"icon": "page_white_picture.png"
},
"1": {
"name": "341.pdf",
"bytes": 3394,
"link": "340.pdf?dl=0",
"icon": "page_white_acrobat.png"
}
第二个对象
// obj2
{
"id_pro": "70",
"nuevo": "true",
"fecha_ser": "2017-10-18"
}
预期结果
// Merged
{
"0": {
"name": "340.jpg",
"bytes": 21955,
"link": "340.jpg?dl=0",
"icon": "icons64/page_white_picture.png",
"id_pro": "70",
"nuevo": "true",
"fecha_ser": "2017-10-18"
},
"1": {
"name": "341.pdf",
"bytes": 3394,
"link": "340.pdf?dl=0",
"icon": "page_white_acrobat.png",
"id_pro": "70",
"nuevo": "true",
"fecha_ser": "2017-10-18"
}
}
将第二个对象完全添加到第一个对象的每个组中。
是否可以与angular.merge或我需要自己的功能?谢谢
最佳答案
您可以使用native
javascript来实现。
解决方案之一包括forEach
方法和Object.assign
组合以合并属性。
let obj={
"0": {
"name": "340.jpg",
"bytes": 21955,
"link": "340.jpg?dl=0",
"icon": "page_white_picture.png"
},
"1": {
"name": "341.pdf",
"bytes": 3394,
"link": "340.pdf?dl=0",
"icon": "page_white_acrobat.png"
}
};
let second={
"id_pro": "70",
"nuevo": "true",
"fecha_ser": "2017-10-18"
}
Object.keys(obj).forEach(function(key){
Object.assign(obj[key],second);
});
console.log(obj);
关于javascript - 使用AngularJS合并两个对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46816419/