我有一个对象“ unit”,其键是不同的团队。团队的关键是员工。每个员工都是具有自己字段的对象。我遍历一些文件,获取每个员工对象。获得员工对象后,我想将其放入单位对象内的适当团队中。例如:
var indiv = {'Rich':{'a':3,'b':4,'c':5}};
var teamname = "TeamA";
var unit = {};
unit[teamname] = indiv;
//[object Object] {
// TeamA: [object Object] {
// Rich: [object Object] { ... }
// }
// }
现在,如何向该对象添加以下元素?
var indiv2 = {'Tom':{'a':6,'b':8,'c':10}};
因此结果是:
// [object Object] {
// TeamA: [object Object] {
// Rich: [object Object] { ... },
// Tom: [object Object] { ... }
// }
// }
有任何线索吗?将TeamA变成对象数组的唯一选择是
谢谢!
答案 0 :(得分:2)
一种实现方法如下。使用unit[teamname] = {};
,您可以在键teamname
下保存一个空对象。然后,在键Rich
和Tom
var rich = {'a':3,'b':4,'c':5}
var tom = {'a':6,'b':8,'c':10}
var name1 = "Rich"
var name2 = "Tom"
var unit = {};
var teamname = "TeamA";
unit[teamname] = {};
unit[teamname][name1] = rich;
unit[teamname][name2] = tom;
console.log(unit);
答案 1 :(得分:2)
假设您有
const indiv = {'Rich':{'a':3,'b':4,'c':5}}
const indiv2 = {'Tom':{'a':6,'b':8,'c':10}}
您可以使用Object.assign
const indiv = {'Rich':{'a':3,'b':4,'c':5}}
const indiv2 = {'Tom':{'a':6,'b':8,'c':10}}
const unit = { teamA: {} }
Object.assign(unit.teamA, indiv)
console.log(unit.teamA)
Object.assign(unit.teamA, indiv2)
console.log(unit.teamA)
答案 2 :(得分:0)
如果您不想/不能更改indiv
,indiv2
结构,则可以通过这种方式进行。
从indiv2获取密钥:
let key = Object.keys(indiv2)[0]
获取值:
let values = Object.values(indiv2)[0]
现在您可以这样做:
unit[teamname][key] = values
答案 3 :(得分:0)
const both = {'Rich':{'a':3,'b':4,'c':5},'Tom':{'a':6,'b':8,'c':10}};
const teamName = "TeamA";
let unit = { [teamName] : {} };
unit[teamName] = {...both}
console.log(unit);
一次一次:
const persons = [
{ 'Rich':{'a':3,'b':4,'c':5} },
{ 'Tom':{'a':6,'b':8,'c':10} }
];
const teamName = "TeamA"
let unit = { [teamName]: {} };
persons.forEach(person => unit[teamName] = { ...unit[teamName], ...person })
console.log(unit);