如何从javascript中的对象数组映射多个属性 [英] how to map more than one property from array of object in javascript
本文介绍了如何从javascript中的对象数组映射多个属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个对象数组,如下所示:
var obj = [{a: 1, b: 5, c: 9},{a: 2, b: 6, c: 10},{a: 3, b: 7, c: 11},{a: 4, b: 8, c: 12}];
我知道如何像这样使用 Array.map()
获取单个对象.
var 结果 = obj.map(x=>x.a)
这会给我以下结果
[1, 2, 3, 4]
但我想要如下结果:
<预><代码>[{a: 1, b: 5},{a: 2, b: 6},{a: 3, b: 7},{a: 4, b: 8}]简而言之,从对象数组中我只想选择几个字段(多个)
怎么做?
解决方案
您可以将 .map()
与 对象解构:
let data = [{a:1,b:5,c:9}, {a:2,b:6,c:10},{a:3,b:7,c:11}, {a:4,b:8,c:12}];let result = data.map(({ a, b }) => ({a, b}));console.log(result);
.as-console-wrapper { max-height: 100% !important;顶部:0;}
I have an array of Object as follows:
var obj = [
{a: 1, b: 5, c: 9},
{a: 2, b: 6, c: 10},
{a: 3, b: 7, c: 11},
{a: 4, b: 8, c: 12}
];
I know about how to get single object using Array.map()
like this.
var result = obj.map(x=>x.a)
This will give me following result
[1, 2, 3, 4]
But I want result like follows:
[
{a: 1, b: 5},
{a: 2, b: 6},
{a: 3, b: 7},
{a: 4, b: 8}
]
inshort from array of object i want to select only few fields(more than one)
how to do that ?
解决方案
You can use .map()
with Object Destructuring:
let data = [
{a:1,b:5,c:9}, {a:2,b:6,c:10},
{a:3,b:7,c:11}, {a:4,b:8,c:12}
];
let result = data.map(({ a, b }) => ({a, b}));
console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }
这篇关于如何从javascript中的对象数组映射多个属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文