将对象数组转换为属性数组

Ell*_*one 17 javascript arrays

是否有一种简单的方法,使用filter或者parse其他东西来转换数组,如下所示:

var someJsonArray = [
  {id: 0, name: "name", property: "value", otherproperties: "othervalues"},
  {id: 1, name: "name1", property: "value1", otherproperties: "othervalues1"},
  {id: 2, name: "name2", property: "value2", otherproperties: "othervalues2"}
];
Run Code Online (Sandbox Code Playgroud)

进入一个简单的数组,填充前一个数组中包含的对象的一个​​属性,如下所示:

[0, 1, 2]
Run Code Online (Sandbox Code Playgroud)

Pra*_*man 43

使用.map()功能:

finalArray = someJsonArray.map(function (obj) {
  return obj.id;
});
Run Code Online (Sandbox Code Playgroud)

片段

var someJsonArray = [
  {id: 0, name: "name", property: "value", therproperties: "othervalues"},
  {id: 1, name: "name1", property: "value1", otherproperties: "othervalues1"},
  {id: 2, name: "name2", property: "value2", otherproperties: "othervalues2"}
];
var finalArray = someJsonArray.map(function (obj) {
  return obj.id;
});
console.log(finalArray);
Run Code Online (Sandbox Code Playgroud)

上面的代码片段已更改为使其正常工作.


coa*_*sap 10

一个更小的例子(ES6 以后):

someJsonArray.map(({id}) => id)
Run Code Online (Sandbox Code Playgroud)