【发布时间】:2018-09-02 12:28:03
【问题描述】:
我已经设法根据键值将数组拆分为不同的组。我想要实现的是将这些或多或少的组变成一个数组,所以我的组变成[[Regio__c],[Categorie__c]]而不是{Regio__c:[],Categorie__c:[]}。这与普通的 javascript 没有库。
我试过了:return [key].concat.split; 这返回 undefined。
下面是我在 sn-p 中的代码
var filter = [{
"Id": "120",
"arrayPicklist": "Categorie__c"
}, {
"Id": "121",
"arrayPicklist": "Regio__c"
},
{
"Id": "122",
"arrayPicklist": "Categorie__c"
}, {
"Id": "123",
"arrayPicklist": "Regio__c"
},
{
"Id": "121",
"arrayPicklist": "Regio__c"
}
]
function splitArrayByValue(arr, key) {
var split = {};
for (var i = 0; i < arr.length; i++) {
var p = arr[i][key];
if (!split[p]) {
split[p] = [];
}
split[p].push(arr[i])
}
return split;
}
var buckets2 = splitArrayByValue(filter, 'arrayPicklist');
console.log(buckets2);
【问题讨论】:
标签: javascript arrays object filter split