在javascript中将一个对象添加到另一个对象

时间:2018-08-24 12:40:32

标签: javascript angularjs

我有2个对象,我需要向另一个对象添加一个对象。

var loc = {
  leftArray: [],
  topArray: [],
  bottomArray: [],
  rightArray: []
}

var obj = {
  id: "ce",
  icon: "logo/image.png",
  name: "CE",
  type: "type2",
  version: 3.4
}
var obj = {
  id: "ce",
  icon: "logo/image.png",
  name: "CE",
  type: "type2",
  version: 3.4,
  leftArray: [],
  topArray: [],
  bottomArray: [],
  rightArray: []
}

有没有简单的方法可以做到这一点?

2 个答案:

答案 0 :(得分:2)

您可以使用Object.assign();

obj = Object.assign(obj, loc);

或者只是

Object.assign(obj, loc);

T.J。克劳德在评论中提出了建议。

答案 1 :(得分:0)

您可以使用Spread语法将它们合并,例如

let objOne = { a: 'hi' }
let objTwo = { b: 'hello' }
let objOneAndTwo = { ...objOne, ...objTwo }; // { a: 'hi', b: 'hello' }

或使用对象分配:

let objOneAndTwo = Object.assign({}, a, b)

请注意,如果您的对象具有具有相同名称优先级的属性,则使用这种方法将使用最正确的对象(在此示例中为objectTwo)

其他信息:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax