如何从javascript对象中获取特定的键值?

时间:2018-10-02 16:22:29

标签: javascript arrays object

我有一个对象,我想创建一个具有特定键值的新对象,例如

我的代码如下:

var objArray = [{
    "firstname": "bbb",
    "userName": "bbb1",
    "title": "",
    "created_by_user_id": "-1",
    "enabled": "true",
    "lastname": "AC",
    "last_connection": "",
    "password": "",
    "manager_id": "0",
    "id": "14",
    "job_title": "job1",
    "last_update_date": "2018-08-08 13:35:56.996"
  },
  {
    "firstname": "aaa",
    "icon": "icons/default/icon_user.png",
    "creation_date": "2018-08-08 13:35:56.876",
    "userName": "aaa1",
    "title": "",
    "created_by_user_id": "-1",
    "enabled": "true",
    "lastname": "AH",
    "last_connection": "",
    "password": "",
    "manager_id": "0",
    "id": "9",
    "job_title": "job2",
    "last_update_date": "2018-08-08 13:35:56.876"
  }
]
for (var i = 0; i < obj.length; i++) {
  objArray.push(obj[i]["id"]);
}
return objArray

我想创建一个新对象,例如

[{
  "id": "14"
}, {

  "id": "9",
}]

但是,我的结果是

[
  "9",
  "3"
]

我想将结果作为对象。感谢您的帮助。

预先感谢

3 个答案:

答案 0 :(得分:2)

使用Array.map

var objArray = [{"firstname":"bbb","userName":"bbb1","title":"","created_by_user_id":"-1","enabled":"true","lastname":"AC","last_connection":"","password":"","manager_id":"0","id":"14","job_title":"job1","last_update_date":"2018-08-08 13:35:56.996"},{"firstname":"aaa","icon":"icons/default/icon_user.png","creation_date":"2018-08-08 13:35:56.876","userName":"aaa1","title":"","created_by_user_id":"-1","enabled":"true","lastname":"AH","last_connection":"","password":"","manager_id":"0","id":"9","job_title":"job2","last_update_date":"2018-08-08 13:35:56.876"}];

let result = objArray.map(o => ({id: o.id}));
console.log(result);

答案 1 :(得分:1)

只需按以下命令即可添加对象文字:

 objArray.push({ id: obj[i]["id"] });

不确定为什么这样有用...,

答案 2 :(得分:1)

只需将数组映射到仅包含指定键和值的新对象的数组:

objArray.map(({ id }) => ({ id }));

这是一个例子:

var objArray = [{
    "firstname": "bbb",
    "userName": "bbb1",
    "title": "",
    "created_by_user_id": "-1",
    "enabled": "true",
    "lastname": "AC",
    "last_connection": "",
    "password": "",
    "manager_id": "0",
    "id": "14",
    "job_title": "job1",
    "last_update_date": "2018-08-08 13:35:56.996"
  },
  {
    "firstname": "aaa",
    "icon": "icons/default/icon_user.png",
    "creation_date": "2018-08-08 13:35:56.876",
    "userName": "aaa1",
    "title": "",
    "created_by_user_id": "-1",
    "enabled": "true",
    "lastname": "AH",
    "last_connection": "",
    "password": "",
    "manager_id": "0",
    "id": "9",
    "job_title": "job2",
    "last_update_date": "2018-08-08 13:35:56.876"
  }
];

var processed = objArray.map(({ id }) => ({ id }));
console.log(processed);