Skip to content
Related Articles

Related Articles

How to find if two arrays contain any common item in Javascript ?

Improve Article
Save Article
  • Last Updated : 14 Nov, 2022
Improve Article
Save Article

Given two arrays containing array elements and the task is to check if two arrays contain any common elements then it returns True otherwise return False.

Examples:

Input: array1 = ['a', 'b', 'c', 'd', 'e']
       array2 = ['f', 'g', 'c']
Output: true

Input: array1 = ['x', 'y', 'w', 'z']
       array2 = ['m', 'n', 'k']
Output: false

There are many methods to solve this problem in JavaScript some of them are discussed below.

Method 1: Brute Force approach 

  • Compare each and every item from the first array to each and every item of second array.
  • Loop through array1 and iterate it from beginning to the end.
  • Loop through array2 and iterate it from beginning to the end.
  • Compare each and every item from array1 to array2 and if it finds any common item then return true otherwise return false.

Example: 

javascript




<script>
    // Declare two array
    const array1 = ['a', 'b', 'c', 'd'];
    const array2 = ['k', 'x', 'z'];
      
    // Function definition with passing two arrays
    function findCommonElement(array1, array2) {
          
        // Loop for array1
        for(let i = 0; i < array1.length; i++) {
              
            // Loop for array2
            for(let j = 0; j < array2.length; j++) {
                  
                // Compare the element of each and
                // every element from both of the
                // arrays
                if(array1[i] === array2[j]) {
                  
                    // Return if common element found
                    return true;
                }
            }
        }
          
        // Return if no common element exist
        return false
    }
      
    console.log(findCommonElement(array1, array2))
</script>                  


Output: 

false

Time Complexity: O(M * N)

Method 2: 

  • Create an empty object and loop through first array.
  • Check if the elements from the first array exist in the object or not. If it doesn’t exist then assign properties === elements in the array.
  • Loop through second array and check if elements in the second array exists on created object.
  • If element exist then return true else return false.

Example: 

javascript




<script>
    // Declare Two array
    const array1 = ['a', 'd', 'm', 'x'];
    const array2 = ['p', 'y', 'k'];
      
    // Function call
    function findCommonElements2(arr1, arr2) {
          
        // Create an empty object
        let obj = {};
              
            // Loop through the first array
            for (let i = 0; i < arr1.length; i++) {
                  
                // Check if element from first array
                // already exist in object or not
                if(!obj[arr1[i]]) {
                  
                    // If it doesn't exist assign the
                    // properties equals to the 
                    // elements in the array
                    const element = arr1[i];
                    obj[element] = true;
                }
            }
              
            // Loop through the second array
            for (let j = 0; j < arr2.length ; j++) {
              
            // Check elements from second array exist
            // in the created object or not
            if(obj[arr2[j]]) {
                return true;
            }
        }
        return false;
    }
      
    console.log(findCommonElements2(array1, array2))
</script>               


Output: 

false

Time Complexity: O(M + N)

Method 3: 

  • Use the inbuilt ES6 function some() to iterate through each and every element of first array and to test the array.
  • Use the inbuilt function includes() with second array to check if element exist in the first array or not.
  • If element exist then return true else return false

javascript




<script>
    // Declare two array
    const array1= ['a', 'b', 'x', 'z'];
    const array2= ['k', 'x', 'c'
      
    // Iterate through each element in the
    // first array and if some of them 
    // include the elements in the second
    // array then return true.
    function findCommonElements3(arr1, arr2) {
        return arr1.some(item => arr2.includes(item))
    }
      
    console.log(findCommonElements3(array1, array2))
</script>              


Output: 

true

JavaScript is best known for web page development but it is also used in a variety of non-browser environments. You can learn JavaScript from the ground up by following this JavaScript Tutorial and JavaScript Examples.


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!