var arr=[{name:2,id:3},{name:2,id:4},{name:3,id:5},{name:3,id:6},{name:1,id:1},{name:1,id:2}];
// 传入一个数组
// 按照特定方式格式化
function sortArr(arr, str) {
var _arr = [],
_t = [],
// 临时的变量
_tmp;
// 按照特定的参数将数组排序将具有相同值得排在一起
arr = arr.sort(function(a, b) {
var s = a[str],
t = b[str];
return s < t ? -1 : 1;
});
if ( arr.length ){
_tmp = arr[0][str];
}
// console.log( arr );
// 将相同类别的对象添加到统一个数组
for (var i in arr) {
console.log( _tmp);
if ( arr[i][str] === _tmp ){
console.log(_tmp)
_t.push( arr[i] );
} else {
_tmp = arr[i][str];
_arr.push( _t );
_t = [arr[i]];
}
}
// 将最后的内容推出新数组
_arr.push( _t );
return _arr;
}
sortArr( arr, 'name');
js处理数组对象中相同字段放到同一个数组中
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
(javascript)将一个数组分成多个数组(或数组中指定字段进行拆分)
将一个数组分成多个数组。
javascript 前端 开发语言 数组 字段 -
JS把一个对象数组转成一个不同字段的对象数组
【代码】JS把一个对象数组转成一个不同字段的对象数组。
javascript 前端 开发语言 字段 对象数组