ES6中的Set是一种新的数据结构,它类似于数组,但是成员的值都是唯一的,没有重复的值。

要判断两个数组是否有重复的成员,可以使用Set的特性来解决。具体步骤如下:

  1. 首先,创建两个Set对象,分别用来存储两个数组的成员。
const set1 = new Set(array1);
const set2 = new Set(array2);
  1. 然后,使用Set的交集操作,判断两个Set对象是否有交集。
const intersection = new Set([...set1].filter(x => set2.has(x)));
  1. 最后,判断交集的大小是否为0,如果为0,则说明两个数组没有重复的成员;如果大于0,则说明两个数组有重复的成员。
const hasDuplicates = intersection.size > 0;

完整的代码示例如下:

const array1 = [1, 2, 3, 4, 5];
const array2 = [4, 5, 6, 7, 8];

const set1 = new Set(array1);
const set2 = new Set(array2);

const intersection = new Set([...set1].filter(x => set2.has(x)));

const hasDuplicates = intersection.size > 0;

console.log(hasDuplicates); // 输出 true

上述代码中,array1和array2是两个数组,分别包含了一些数字。通过创建Set对象,将数组的成员存储到Set中。然后使用Set的交集操作,找到两个Set对象中的交集,即两个数组中的重复成员。最后判断交集的大小,如果大于0,则说明有重复的成员,否则没有重复的成员

详细介绍 es6 Set 判断两个数组是否有重复的成员。

原文地址: https://www.cveoy.top/t/topic/hPW9 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录