var arr = [
{'a': '王五', 'b': 0},
{'a': '王五', 'b': 99},
{'a': '张三', 'b': 1},
{'a': '张三', 'b': 2},
{'a': '李四', 'b': 3},
{'a': '李四', 'b': 4},
{'a': '张六', 'b': 5}
]
for(var i = arr.length - 1; i > 0; i--) {
let data = arr[i]
if(!data.list || data.list.length == 0) {
data.list = [{'b': data.b}]
}
let prev = i - 1
arr[prev].list = arr[prev].list || []
arr[prev].list.push({'b': arr[prev].b})
if(data.a == arr[prev].a) {
if(data.list && data.list.length > 0) {
arr[prev].list = arr[prev].list.concat(data.list)
}
arr.splice(i, 1)
}
}
console.log(arr)
console