javascript - 如何将数组中的多组重复整数分组到自己的数组数组中?

标签 javascript arrays node.js duplicates lodash

我正在尝试通过重复值将一个整数数组拆分为一个数组数组。原始数组由 6 位整数的列表组成,其中一些整数成对出现,另一些以 3 或 4 为一组出现。我想将这些重复项推送到它们自己的数组中,并将所有这些重复项数组组合成一个数组数组,稍后我可以循环遍历。

我在 lodash 库中查看了一些方法或组合,但找不到任何似乎有效的东西。我还尝试了一些带有嵌套 for 循环的不同配置,但我也在为此苦苦挣扎。

const directory = "X/";
let files = fs.readdirSync(directory);
let first6Array = [ ];
for(i=0; i< files.length; i++){
 let first6 = files[i].substring(0, 6);
 first6Array.push(first6);
};
console.log(first6Array);

first6Array 的示例输出: [ '141848', '141848', '141848', '142851', '142851', '143275', '143275']

我想以这样的方式结束

让 MasterArray = [[141848,141848,141848],[142851,142851],[143275,143275]];

最佳答案

您可以使用 new Set() 来过滤掉重复项。 然后对每个值使用唯一的数组和过滤器。

const firstArray = [ '141848', '141848', '141848', '142851', '142851', '143275', '143275'];
const numberArray = firstArray.map(Number);
const masterArray = [];

const unique = new Set (numberArray); // Set {141848, 142851, 143275}
unique.forEach(u => {
  masterArray.push(numberArray.filter(e => e === u));
});

console.log(masterArray);

关于javascript - 如何将数组中的多组重复整数分组到自己的数组数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54375237/

相关文章:

javascript - 如何将集合中的所有条目显示为 html (node.js)

javascript - 如何使用wijmo flex grid获取选定行的值

javascript - 展开以逗号分隔的数组元素

javascript - 在将多个文件上传到服务器之前验证多个文件上传中的单个文件

arrays - 查找数组中最大落差的算法

node.js - 如何使用 Express 获取目录内容?

javascript - 如何在nodejs中获取以字节为单位的字符串长度?

javascript - 在 AngularJS 应用程序中,可以引用 Bower 和 Node 文件夹内的文件吗?

javascript - 用鼠标旋转固定大小的线

javascript - 自动播放选项卡