数组取值问题

var value = [{'value': {'year': 2018, 'month':3, 'count': 123}},{'value': {'year': 2018, 'month':12, 'count': 68}}];//这是请求拿到的数组
var value = [ {'year': 2018, 'month':3, 'count': 123},{'year': 2018, 'month':12, 'count': 68}]//这个是我想要的格式
有什么快速且优雅的方式实现。
阅读 2.4k
4 个回答
var result = value.map(x => x.value);

用map函数

> var value = [{'value': {'year': 2018, 'month':3, 'count': 123}},{'value': {'year': 2018, 'month':12, 'count': 68}}];
undefined
> value.map(v=> v.value)
[ { year: 2018, month: 3, count: 123 },
  { year: 2018, month: 12, count: 68 } ]
>
var value = [{'value': {'year': 2018, 'month':3, 'count': 123}},{'value': {'year': 2018, 'month':12, 'count': 68}}];
var valueResult = value.map((item)=>{
    return item.value
});
结果:valueResult =[ {'year': 2018, 'month':3, 'count': 123},{'year': 2018, 'month':12, 'count': 68}]

一般的方式for循环,构造新的对象;直接用Map比较省事儿。

推荐问题