Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用lodash连接阵列对象_Javascript_Arrays - Fatal编程技术网

Javascript 如何使用lodash连接阵列对象

Javascript 如何使用lodash连接阵列对象,javascript,arrays,Javascript,Arrays,我有两个变量和两个不同的数组对象。一个是集合(this.collection)对象,第二个是用户(this.user)对象 我想通过UID将这两个对象合并为一个。 这是收集对象: { "id":"d67de5QJ", "admins":[ "494949393" ], "color":"#029ae4", "components":{ "forums":false,

我有两个变量和两个不同的数组对象。一个是集合(this.collection)对象,第二个是用户(this.user)对象

我想通过UID将这两个对象合并为一个。 这是
收集对象

   {  
       "id":"d67de5QJ",
       "admins":[  
          "494949393"
       ],
       "color":"#029ae4",
       "components":{  
          "forums":false,
          "pages":true,
          "photos":false,
          "videos":false
       },
       "createdAt":"2018-02-09 14:38:59",
       "description":"Angular is a TypeS",
       "homepage":"pages",
       "photoURL":"https://firebase..",
       "status":"Public",
       "title":"Angular 5",
       "uid":"hlyAbEUfJhbxy",
       "updatedAt":"2018-02-09 14:38:59"
    }
这是
用户对象

{
  "bio": "<strong>PROFILE NEEDS EDITING",
  "contactInfo": {
    ...
  },
  "createdAt": "2018-02-09 12:43:47",
 ,
  "email": "email@gmail.com",
  "avatar": "https://lh5.googleusercontent.com/-3LjYEmTIZlo/A...",
  "roles": {
    "admin": false,
    "dealer": false,
    "user": true
  },
  "status": "online",
  "uid": "hlyAbEUfJhbxy",
  "updatedAt": "2018-02-09 14:37:23",
}
Object.assign()将适用于此。你可以找到详细的解释

看小提琴

var col={
“id”:“d67de5QJ”,
“管理员”:[
"494949393"
],
“颜色”:“029ae4”,
“组成部分”:{
"论坛":假,,
“页面”:正确,
“照片”:假,
“视频”:错误
},
“createdAt”:“2018-02-09 14:38:59”,
“说明”:“角度是一种类型”,
“主页”:“页面”,
“photoURL”:https://firebase..",
“状态”:“公共”,
“标题”:“角度5”,
“uid”:“hlyAbEUfJhbxy”,
“更新日期”:“2018-02-09 14:38:59”
}
变量用户={
“bio”:“档案需要编辑”,
“createdAt”:“2018-02-09 12:43:47”,
“电子邮件”:email@gmail.com",
“阿凡达”:https://lh5.googleusercontent.com/-3LjYEmTIZlo/A...",
“角色”:{
“管理员”:错误,
“经销商”:假,
“用户”:真
},
“状态”:“在线”,
“uid”:“hlyAbEUfJhbxy”,
“更新日期”:“2018-02-09 14:37:23”,
}
console.log(Object.assign(col,user))

您可以使用loadash merge:
\uuz.merge
。与
Object.assign
不同,
合并
甚至处理嵌套对象。查找文档和示例。

您可以使用
对象。赋值
合并两个对象,但此方法将用相同的键覆盖值。
\uuuu.union
适用于数组。您正在将其用于对象。
if(this.collection) {
          this._auth.getUser(this.collection.uid).subscribe((user) => {
            this.user = user;
            const col = unionBy(this.user, this.collection, this.collection.uid)
             console.log(col)
          });
var col =   {  
       "id":"d67de5QJ",
       "admins":[  
          "494949393"
       ],
       "color":"#029ae4",
       "components":{  
          "forums":false,
          "pages":true,
          "photos":false,
          "videos":false
       },
       "createdAt":"2018-02-09 14:38:59",
       "description":"Angular is a TypeS",
       "homepage":"pages",
       "photoURL":"https://firebase..",
       "status":"Public",
       "title":"Angular 5",
       "uid":"hlyAbEUfJhbxy",
       "updatedAt":"2018-02-09 14:38:59"
    }

 var user = {
  "bio": "<strong>PROFILE NEEDS EDITING",
  "createdAt": "2018-02-09 12:43:47",

  "email": "email@gmail.com",
  "avatar": "https://lh5.googleusercontent.com/-3LjYEmTIZlo/A...",
  "roles": {
    "admin": false,
    "dealer": false,
    "user": true
  },
  "status": "online",
  "uid": "hlyAbEUfJhbxy",
  "updatedAt": "2018-02-09 14:37:23",
}

console.log(Object.assign(col,user))