Emi*_*nov 5 javascript arrays function filter
我有一个数组,里面有一些值,我希望返回另一个数组,该数组的值分组到他们自己的数组中。
所以我想要达到的结果是这样的:
var arr = [1,1,2,2,2,3,3,4,4,4,4,5,6]
var groupedArr =[[1,1],[2,2,2],[3,3],[4,4,4,4],[5],[6]]
Run Code Online (Sandbox Code Playgroud)
该提案适用于Array#reduce排序数组。
var arr = [1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 4, 5, 6],
groupedArr = arr.reduce(function (r, a, i) {
if (!i || a !== r[r.length - 1][0]) {
return r.concat([[a]]);
}
r[r.length - 1].push(a);
return r;
}, []);
document.write('<pre>' + JSON.stringify(groupedArr, 0, 4) + '</pre>');Run Code Online (Sandbox Code Playgroud)