所以我有一个包含具有不同属性的对象的数组,我想知道如何使用整个数组具有相同属性的对象创建多个数组。
我想离开这里
[
{name:”test”, place:”country”},
{name:”walkAndEat”, Long=100,Lat:15,Location:”place name”},
{name:”test2”,place:”Europe”}
]
至
[
{name:”test”, place:”country”},
{name:”test2”,place:”Europe”}
]
[
{name:”walkAndEat”, Long:100,Lat:15,Location:”place name”}
]
最佳答案
如果您发现对象具有相同的属性,则可以将键保留为集合对象中的(字符串化)索引,并检查属性键是否已存在:
var arrcoll = {};
function add(o){
var keys = JSON.stringify(Object.keys(o).sort());
var arr = arrcoll[keys];
if(arr)
arr.push(o);
else
arrcoll[keys] = [o];
return arr;
}
这可以即时完成,也可以在预先存在的数组上完成,如 Fiddle 所示。
关于javascript - (javascript) 是否可以将不同对象类型的数组拆分为一种对象类型的多个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33627818/