[英]In JavaScript getAttribute from li element works partially
[英]Partially copy element from 1 object to another in Javascript
我有 2 个对象(object2 具有 object1 的所有键以及一些附加键)
object1 = {a:1, b:2}
object2 = {a:0, b:1, c:2}
我想使用 object1 的值更新 object2 的值。 更新后object2会是这个样子
object2 = {a:1, b:2, c:2}
键c
的值不变。 有没有办法以紧凑的方式做到这一点,而无需遍历 object1 中的所有键值对
您可以使用Object.assign
。 但是,它将覆盖早期对象中的先前属性,因此您需要在obj1
之前将obj2
传递给它。
const object1 = {a:1, b:2}, object2 = {a:0, b:1, c:2}; const res = Object.assign({}, object2, object1); console.log(res);
如果您可以使用第三方 package,您可以使用lodash中的assign
方法:
var _ = require('lodash');
object2 = _.assign(object2, object1);
你可以做一些像我下面的例子,它不会迭代 trought object1 键
const object1 = {a:1, b:2} const object2 = {a:0, b:1, c:2} for(const prop in object2){ object2[prop] = object1[prop] || object2[prop]; } console.log(object2)
你可以在传播中做到这一点
const object1 = {a:1, b:2}
const object2 = {a:0, b:1, c:2}
console.log({...obj2, ...obj1}) // output {a: 1, b: 2, c: 2}
//if you are using let you can do the following
object2 = {...obj2, ...obj1}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.