将相同条目分组为子数组-JavaScript
假设我们有一组数字,这些数字具有相同的条目。我们需要编写一个函数,该函数接受数组并将所有相同的条目分组到一个子数组中,并返回由此形成的新数组。
例如:如果输入数组是-
const arr = [234, 65, 65, 2, 2, 234];
那么输出应该是-
const output = [[234, 234], [65, 65], [2, 2]];
我们将使用哈希映射来跟踪已经发生的元素,并使用for循环遍历数组。
示例
以下是代码-
const arr = [234, 65, 65, 2, 2, 234];
const groupArray = arr => {
const map = {};
const group = [];
for(let i = 0; i < arr.length; i++){
if(typeof map[arr[i]] === 'number'){
group[map[arr[i]]].push(arr[i]);
}else{
//push方法返回数组的新长度
//新推入元素的索引为length-1-
map[arr[i]] = group.push([arr[i]])-1;
}
};
return group;
}
console.log(groupArray(arr));输出结果
这将在控制台中产生以下输出-
[ [ 234, 234 ], [ 65, 65 ], [ 2, 2 ] ]
热门推荐
10 财运虎年祝福语简短语
11 单亲爸爸春节祝福语简短
12 狗狗上厕所训练
13 植物种植祝福语简短
14 翻译考试祝福语朋友简短
15 个人周年庆简短祝福语
16 狗狗怎么训练
17 分别祝福语简短搞笑英文
18 生日广州男生祝福语简短