javascript - 从对象数组返回属性的子集
我有一个对象数组,如
var array = [{date:'01/01/2017',value1:200,value2:300,value3:400}]
我正在尝试获取对象属性的一个子集,例如 var
var newArray = [['01/01/2017',200],['01/01/2017',200],['01/01/2017',200]......]
我不想要这样的数组
[[date:'',value2:],[date:'',value2:],[date:'',value13:]]
但是只是直接从对象数组得到一个二维数组。
目前我正在对我的对象数组进行 for each 遍历,并将所需的属性推入一个数组中,然后返回该数组。
我在寻找 map 函数,可能看看它是否能工作,但这个不能与 map 一起使用
array.map(function(item){
return {
item.date, item.value1
}
});
请问是否有其他方法可以在不使用循环的情况下完成此操作?
谢谢
答案#1
你应该为此使用map,你几乎就要成功了。这会帮你解决问题:
array.map(function(item){ return [item.date,item.value1]});
答案#2
你需要将这些值放入数组中,map 方法会完成剩下的工作
var array = [{
date: '01/01/2017',
value1: 200,
value2: 300,
value3: 400
}, {
date: '01/01/3017',
value1: 500,
value2: 300,
value3: 400
}];
var m = array.map(function(item) {
return [item.date, item.value1]
})
console.log(m)[['01/01/2017',200],['01/01/2017',200]]