let arr=[
{
"color": "red",
"iconName": "class1",
"name": "菜單一",
"styleName": "分類名稱1",
"url": "index1"
},
{
"color": "red",
"iconName": "calss2",
"name": "菜單二",
"styleName": "分類名稱2",
"url": "index2"
},
{
"color": "blue",
"iconName": "calss3",
"name": "菜單三",
"styleName": "分類名稱3",
"url": "index3"
}
];
var map = {},dest = [];
for(var i = 0; i < arr.length; i++){
var ai = arr[i];
if(!map[ai.styleName]){
dest.push({
styleName: ai.styleName,
data: [ai]
});
map[ai.styleName] = ai;
}else{
for(var j = 0; j < dest.length; j++){
var dj = dest[j];
if(dj.styleName == ai.styleName){
dj.data.push(ai);
break;
}
}
}
}
console.log("dest:"+JSON.stringify(dest));