数组中连续重复值提取

371 阅读1分钟
let array = ['w', 'w', 'w', 'd', 's', 's', 'w'];

function takeArr(arr) {
  var result = [],
    i = 0;
  result[i] = [arr[0]];
  arr.reduce(function (total, currentValue) {
    currentValue === total ? result[i].push(currentValue) : result[++i] = [currentValue];
    return currentValue;
  });
  return result;
}
console.log(takeArr(array));
//打印结果/[ [ 'w', 'w', 'w' ], [ 'd' ], [ 's', 's' ], [ 'w' ] ]

同理也可以用于数组中是对象的数据