组合成新的数组"/>
js将数组中按照相同属性值组合成新的数组
let ListData =
[{ StEntId: 1, StEntName: '企业名称企业名称1', EsGrade: 1, OrderDt: '2019-12-01' },
{ StEntId: 2, StEntName: '企业名称企业名称2', EsGrade: 4, OrderDt: '2019-12-02' },{ StEntId: 1, StEntName: '企业名称企业名称否', EsGrade: 5, OrderDt: '2019-12-03' },{ StEntId: 2, StEntName: '企业名称企业名称22', EsGrade: 7, OrderDt: '2019-12-04' }]
按照特定的参数将数组排序将具有相同值得排在一起
function dataFormat (arr, str) {arr = arr.sort(function (a, b) {var s = a[str]var t = b[str]return s < t ? -1 : 1})return arr}console.log(dataFormat(ListData,'StEntId'))
将相同类别的对象添加到统一个数组
// 传入一个数组
// 按照特定方式格式化
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(ListData,'StEntId'))
更多推荐
js将数组中按照相同属性值组合成新的数组
发布评论