Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 배열 비교하기 – 두 배열에서 일치하는 요소 찾는 방법

JavaScript에서는 === 연산자만으로는 배열 전체를 직접 비교할 수 없습니다. 대신 반복문을 사용해 두 배열의 요소를 하나씩 대조하는 방식으로 비교를 수행합니다.

아래 예제에서는 중첩 for 반복문을 활용하여 첫 번째 배열(arr1)의 각 요소가 두 번째 배열(arr2)에 존재하는지 확인하고, 일치하는 요소를 화면에 출력합니다.

예제 코드

<html>
   <body>
      <script>
         var arr1 = [50,60,65,90];
         var arr2 = [25,35,50,90];

         for (i = 0; i < arr1.length; i++) {
            for (z = 0; z < arr1.length; z++) {
               if (arr1[i] === arr2[z]) {
                  document.write("<br>Matched element: " + arr2[z]);
               }
           }
       }
      </script>
   </body>
</html>

실행 결과

Matched element: 50
Matched element: 90

코드 설명

1. 배열 선언: 두 개의 숫자 배열 arr1arr2를 생성합니다.

2. 외부 반복문: arr1의 요소를 인덱스 i로 순회합니다.

3. 내부 반복문: arr2의 요소를 인덱스 z로 순회하며 현재 arr1[i] 값과 비교합니다.

4. 일치 여부 판별: ===(엄격한 동등 연산자)로 값과 자료형이 모두 같은지 검사한 뒤, 일치하면 해당 값을 문서에 출력합니다.

참고 사항

위 방법은 소규모 배열에는 충분하지만, 시간 복잡도가 O(n²)이므로 데이터가 많다면 filter()includes()를 조합하거나 Set 객체를 활용하면 더 효율적으로 교집합을 구할 수 있습니다.