JavaScript 如何找到存在于任意两个给定数组中的每个元素

JavaScript 如何找到存在于任意两个给定数组中的每个元素

在本文中,我们将学习如何找到存在于给定两个数组中的每个元素。要找到存在于任意两个给定数组中的每个元素,您可以合并这些数组,并移除任何重复的元素。

  • 使用 Set
  • 使用循环
  • 使用 filter() 和 concat()

方法1:使用Set

Set是一个集合,其中的元素是唯一的,即不会重复。我们将两个数组的所有元素添加到Set中,然后返回Set。

示例: 在此示例中,我们将看到使用JavaScript的Set方法来找到存在于任意两个给定数组中的每个元素。

// Function which takes an array as argument
    const print = (arr1,arr2) => {
     
        // Creating a set with elements of arr1
        const set = new Set(arr1)
     
        // Adding elements of arr2
        arr2.forEach(element => {
            set.add(element)
        });
     
        // Returning resultant array
        return set
    }
     
    // Input array
    const arr1 = [10, 20, 30, 40, 50]
    const arr2 = [10,20,34,32,11]
      
    // Printing the result
    console.log(print(arr1,arr2))

输出

Set(8) { 10, 20, 30, 40, 50, 34, 32, 11 }

方法2:使用循环

在这种方法中,我们将选择一个数组,然后在第二个数组上运行循环,并检查该数组的元素是否存在于第一个数组中。如果元素已经存在,则跳过,否则将其添加到第一个数组中。

示例: 在这个示例中, 我们将使用Javascript循环来找到任何一个给定数组中存在的元素。

// Javascript program to find all element
// present in any of two given arrays
 
// Function which takes an array as argument
const print = (arr, arr2) => {
 
    // A counter for adding element
    let k = arr.length
 
    // Checking every element and
    // adding required element
    arr2.forEach(element => {
        if (arr.indexOf(element) == -1) {
            arr[k] = element
            k++
        }
    });
 
    // Returning resultant array
    return arr
}
 
// Input array
const arr1 = [1, 2, 3, 4, 5]
const arr2 = [1, 2, 3, 4]
 
// Printing the result
console.log(print(arr1, arr2))

输出

[ 1, 2, 3, 4, 5 ]

方法3:使用filter()和concat()函数

在这个方法中,我们将使用concat()函数合并数组,并使用filter()函数删除重复的元素。

示例:

function findElementsInArr(arr1, arr2) {
    let mergedArray = arr1.concat(arr2);
    let uniqueEle = mergedArray.filter(function (element, index, self) {
        return self.indexOf(element) === index;
    });
    return uniqueEle;
}
 
let arr1 = [1, 2, 3, 4];
let arr2 = [3, 4, 5, 6];
let result = findElementsInArr(arr1, arr2);
console.log(result);

输出

[ 1, 2, 3, 4, 5, 6 ]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程