把数组中特定key一样的元素放在一个元素(数组)里

sortArr(arr, str) {
          var _arr = [],
              _t = [],
              _tmp = arr[0][str];
      
          // 按照特定的参数将数组排序将具有相同值得排在一起
          arr = arr.sort(function(a, b) {
              var s = a[str],
                  t = b[str];
              return s < t ? -1 : 1;
          });
          // 将相同类别的对象添加到统一个数组
          for (var i in arr) {
              if ( arr[i][str] === _tmp ){
                  _t.push( arr[i] );
              } else {
                  _tmp = arr[i][str];
                  _arr.push( _t );
                  _t = [arr[i]];
              }
          }
          // 将最后的内容推出新数组
          _arr.push(_t);
          return _arr;
      },

猜你喜欢

转载自blog.csdn.net/AN0692/article/details/107313187