从对象数组中获取

时间:2017-09-22 11:43:11

标签: javascript ecmascript-6

我有一个对象数组

var arr = [{id:1, animal:'dog'}, {id:3, animal:'tiger'}, {id:2, animal:'elephant'}, {id:5, animal:'cat'}];

我想从上面的对象数组中获取id并创建另一个数组,如

var idArray = [1,3,2,5]; 

请建议简明的es6解决方案。

2 个答案:

答案 0 :(得分:2)

您可以使用map在一行中执行此操作(它将创建新数组,并将id从每次迭代arr添加到idArray),在此处是:



var arr = [{id:1, animal:'dog'}, {id:3, animal:'tiger'}, {id:2, animal:'elephant'}, {id:5, animal:'cat'}];

var idArray = arr.map(function(item) {return item.id});
console.log(idArray);




答案 1 :(得分:2)

使用Array#map迭代数组,然后使用箭头函数选择id,并针对ES6风格进行解构:

const arr = [{id:1, animal:'dog'}, {id:3, animal:'tiger'}, {id:2, animal:'elephant'}, {id:5, animal:'cat'}]

const result = arr.map(({ id }) => id);

console.log(result);