var jsons = [
{"a":1,"b":2,"e":3,"d":4,"p":'河北',"c":'石家庄'},
{"a":1,"b":2,"e":3,"d":4,"p":'河北',"c":'保定'},
{"a":1,"b":2,"e":3,"d":4,"p":'河北',"c":'其他'},
{"a":2,"b":3,"e":4,"d":5,"p":'广东',"c":'广州'},
{"a":2,"b":3,"e":4,"d":5,"p":'广东',"c":'深圳'},
{"a":3,"b":4,"e":5,"d":6,"p":'澳门',"c":'澳门'}
];
var result = [
[
{"a":1,"b":2,"e":3,"d":4,"p":'河北',"c":'石家庄'},
{"a":1,"b":2,"e":3,"d":4,"p":'河北',"c":'保定'},
{"a":1,"b":2,"e":3,"d":4,"p":'河北',"c":'其他'}
],
[
{"a":2,"b":3,"e":4,"d":5,"p":'广东',"c":'广州'},
{"a":2,"b":3,"e":4,"d":5,"p":'广东',"c":'深圳'}
],
[
{"a":3,"b":4,"e":5,"d":6,"p":'澳门',"c":'澳门'}
]
];
高洛峰2017-04-10 14:39:01
试试下面的代码:
var cities = {}
var result = [];
for (var i = 0; i < jsons.length; i++) {
var item = jsons[i];
if (!cities[item.p]) {
cities[item.p] = [];
result.push(cities[item.p]);
}
cities[item.p].push(item);
}
console.log(result);
大家讲道理2017-04-10 14:39:01
这个方法有很多吧。
如果是支持es5的环境下,
Array.prototype.filter
、Array.prototype.reduce
都能帮你实根据属性特定值筛选对象。