Javascript 从对象数组返回属性子集
我有一个对象数组,比如Javascript 从对象数组返回属性子集,javascript,subset,javascript-objects,Javascript,Subset,Javascript Objects,我有一个对象数组,比如 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:]] 但是
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操作,并将所需的属性推送到一个数组中,然后返回该数组
我正在寻找地图功能可能是,如果可以工作,但这不与地图工作
array.map(function(item){
return {
item.date, item.value1
}
});
请建议是否有任何其他功能可以在不循环的情况下执行此操作
谢谢你应该使用
地图
为此,你几乎做到了。这会帮你解决问题:
array.map(function(item){ return [item.date,item.value1]});
您需要将值放入数组中&
map
方法将完成其余工作
var数组=[{
日期:“2017年1月1日”,
价值1:200,
价值2:300,
价值3:400
}, {
日期:“01/01/3017”,
价值1:500,
价值2:300,
价值3:400
}];
var m=array.map(函数(项){
返回[item.date,item.value1]
})
控制台日志(m)
[['01/01/2017',200],'01/01/2017',200]
感谢它的工作,但由于某种原因,我得到了“未定义”的第二个属性。非常感谢。只需修复您完成的数组文字的语法错误。是的,这就是错误:)