javascript-如何从对象列表中创建属性列表?
我有一个对象列表javascript-如何从对象列表中创建属性列表?,javascript,jquery,Javascript,Jquery,我有一个对象列表 [A, A, A] 包含: A{a:1} 我怎样才能为a名单上的所有a列一个名单呢 注意:我不希望得到属性列表的副本,我想要属性列表本身。如果你对每个对象的“a”属性感兴趣,你需要做的就是从每个对象获得“a”键,并将它们编译成一个列表 var objs = [ { a: 1 }, { a: 2 }, { a: 3 } ]; var listOfAKeyValues = objs.map(function(obj) { return obj.a; }); console.l
[A, A, A]
包含:
A{a:1}
我怎样才能为a名单上的所有a列一个名单呢
注意:我不希望得到属性列表的副本,我想要属性列表本身。如果你对每个对象的“a”属性感兴趣,你需要做的就是从每个对象获得“a”键,并将它们编译成一个列表
var objs = [ { a: 1 }, { a: 2 }, { a: 3 } ];
var listOfAKeyValues = objs.map(function(obj) { return obj.a; });
console.log(listOfAKeyValues) // [ 1, 2, 3 ]
检查地图功能:
你可以这样做:
aArray.map(function(A) {return A[a];})
如果要查找多个属性,并且不知道或不想对每个属性的名称进行编码,则可以将属性名称与值数组配对,如下所示:
功能A(val){
a=val;
这个.b=val+1;
这个.c=val+2;
}
var arr=[新A(1)、新A(2)、新A(3)];
var值=arr.reduce(函数(obj,curr){
Object.key(curr.forEach)函数(key){
if(obj[键]){
obj[key].push(curr[key]);
}否则{
obj[key]=[curr[key]];
}
});
返回obj;
}, {});
console.log(值)
所以您需要一个数组,其中包含每个a
对象上的a
属性的值,对吗?如果您需要属性名称,那么var attrList=objList.map(v=>object.keys(v))代码>。如果需要a的值,那么var-aList=objList.map(v=>v.a)代码>如果只需要不带名称的值,则var valueList=objList.map(v=>[…v])代码>如果您同时需要属性和值作为对象,那么var attrMap=objList.map(v=>object.keys(v.map)(key=>{[key]:v[key]})代码>您可能需要在您的问题上做一些工作,因为它不清楚。。。。。如果你想要高质量的回答,请花足够的时间提出好问题。我认为我需要这些值,当我在新列表中修改时,旧对象列表也应该更改