前端js分组方法,如下所示:
<script>
$(function(){
var list = [
{"fdId": 1,"fdName": "张三","fdAge":30,"fdHigh":10},
{"fdId": 2,"fdName": "李四","fdAge":16,"fdHigh":92},
{"fdId": 3,"fdName": "张三","fdAge":17,"fdHigh":45},
{"fdId": 4,"fdName": "李四","fdAge":27,"fdHigh":87},
{"fdId": 5,"fdName": "张三","fdAge":15,"fdHigh":10},
{"fdId": 6,"fdName": "李四","fdAge":16,"fdHigh":87},
{"fdId": 7,"fdName": "王五","fdAge":20,"fdHigh":45},
{"fdId": 8,"fdName": "王五","fdAge":18,"fdHigh":92}];
var sorted = groupBy(list, function(item){
return [item.name];
});
console.log(sorted);
})
//分组
function groupBy(array, f) {
let groups = {};
array.forEach( function( o ) {
let group = JSON.stringify( f(o) );
groups[group] = groups[group] || [];
groups[group].push( o );
});
return Object.keys(groups).map( function( group ) {
return groups[group];
});
}
</script>