简体   繁体   English

将数组复制到另一个对象属性javascript

[英]copying array to another object property javascript

I have two objects: 我有两个对象:

Group which has a users property, containing an array of ObjectIds: Group ,其具有users属性,含有的ObjectID的数组:

["59f5c8b62f73d036bc4f5673","59f5c7d42f73d036bc4f566b",
"59f5c81a2f73d036bc4f566d","59f5c8482f73d036bc4f566f"]

And another object which has a property which needs to be populated with that exact array of objectIds, so when I create it in the back, it looks like this right now: 另一个对象具有一个属性,需要使用该对象的确切数组填充该属性,因此当我在后面创建它时,现在看起来像这样:

var object = new Object({
      title: req.body.title
      group: req.params.id,
      objectArray: { user: group.users, value: 1 }
    });

I am expecting to get the population as follows: 我期望人口如下:

object: {
    title: some-title,
    group: someRefId,
    objectArray: [ 
       {user: ObjectId1, value: 1},
       {user: ObjectId2, value: 1},
       {user: ObjectId3, value: 1},
       {user: ObjectId4, value: 1}
    ]
}

I need to iterate through that array somehow and then declare {user: user of group.users, value:1} or something. 我需要以某种方式遍历该数组,然后声明{user: user of group.users, value:1}或其他内容。 I don't understand how to iterate through that array while declaring a new object... 我不知道在声明新对象时如何遍历该数组。

 var req = { body: { title: 'some-title' }, params: { id: 'someRefId' } }; var group = { users: [ "59f5c8b62f73d036bc4f5673", "59f5c7d42f73d036bc4f566b", "59f5c81a2f73d036bc4f566d", "59f5c8482f73d036bc4f566f" ] }; var object = { title: req.body.title, group: req.params.id, objectArray: group.users.map(function(user) { return { user: user, value: 1 }; }) }; console.log(object); 

You could use Array.prototype.map to do this. 您可以使用Array.prototype.map来执行此操作。

ES6 ES6

...
objectArray: group.users.map((user) => ({ user, value: 1 }))
...

ES5 ES5

...
objectArray: group.users.map(function (user) {
    return { 
        user: user, 
        value: 1 
    };
})
...

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 javascript将数组复制到另一个 - javascript copying array to another 在一个属性上对 object 数组进行分组,同时计算 javascript 中另一个属性的值 - Grouping a object array on a property while counting the value of another property in javascript 将一个对象的选定属性值复制到另一个对象 - Copying selected property values of one object to another 在另一个数组内的JavaScript对象数组中按属性查找对象 - Find object by property in an array of JavaScript objects inside another array Javascript:将一个数组分配给另一个数组,这是对象的属性 - Javascript : Assigning one array to another array which is a property of an object Javascript-对象的属性在另一个属性中? - Javascript - property of an object in another property? 将 JavaScript 对象从一个数组复制到另一个数组是如何工作的? - How does copying a JavaScript object from one array into another array work? 在javascript中没有对象引用的情况下将对象数组复制到另一个数组(深层复制) - Copying of an array of objects to another Array without object reference in javascript(Deep copy) 将 Javascript getter/setter 复制到另一个原型对象 - Copying Javascript getters/setters to another prototype object JavaScript作用域(将一个数组复制到另一个数组) - JavaScript scoping (copying one array to another)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM