如何合并对象? [英] How to merge objects?
本文介绍了如何合并对象?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
例如,从这两个对象:
var object1 = {
"color": "yellow",
"size": null,
"age": 7,
"weight": null
}
var object2 = {
"color": "blue",
"size": 51,
"age": null
}
我希望这个( object2
覆盖 object1
除了 null
他没有的属性或属性):
I want this (object2
overrides object1
except for null
properties or properties he doesn't have):
{
"color": "blue",
"size": 51,
"age": 7,
"weight": null
}
推荐答案
Copy
var src = { name: 'Apple', price: 5};
var dst= angular.copy(src);
- 深层复制
延期 :
Extend:
var mergedObject = angular.extend(dst, src1, src2, ...)
- 浅层复制
合并 :
Merge:
var mergedObject = angular.merge(dst, src);
- 因为角度1.4 +
- 深(递归)复制
如果你不想用null覆盖,你可以使用this 。
If you want to not overwrite with null, you can use this.
Object.assign():
let movie2 = Object.assign({}, movie1, { episode: 8 });
- fot Angular 2+(ECMAScript 6)
资料来源:
http:// davidcai。 github.io/blog/posts/copy-vs-extend-vs-merge/
这篇关于如何合并对象?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文