>  기사  >  웹 프론트엔드  >  JavaScript를 사용하여 배열이 다른 배열의 하위 집합인지 확인하는 방법은 무엇입니까?

JavaScript를 사용하여 배열이 다른 배열의 하위 집합인지 확인하는 방법은 무엇입니까?

王林
王林앞으로
2023-09-17 11:37:021966검색

如何使用 JavaScript 检查一个数组是否是另一个数组的子集?

두 번째 배열에 첫 번째 배열의 모든 요소가 포함된 경우 첫 번째 배열은 두 번째 배열의 하위 집합입니다. 따라서 때로는 한 배열이 다른 배열의 하위 집합인지 확인해야 할 수도 있습니다.

이 튜토리얼에서는 세 가지 방법을 사용하여 배열이 다른 배열의 하위 집합인지 확인하는 방법을 배웁니다.

for 루프 및 array.includes() 메소드 사용

사용자는 for 루프를 사용하여 첫 번째 배열의 각 요소를 반복할 수 있습니다. 그런 다음 includes() 메서드를 사용하여 두 번째 배열에 첫 번째 배열의 모든 요소가 포함되어 있는지 확인할 수 있습니다.

두 번째 배열에 첫 번째 배열의 모든 요소가 포함된 경우 첫 번째 배열은 두 번째 배열의 하위 집합입니다.

문법

사용자는 아래 구문에 따라 for 루프와 includes() 메서드를 사용하여 배열이 다른 배열의 하위 집합인지 확인할 수 있습니다.

으아아아

위 구문에서는 array1이 array2의 하위 집합인지 확인합니다.

알고리즘

  • 1단계 - array1이 array2의 하위 집합인지 확인합니다.

  • 2단계 - for-of를 사용하여 배열의 각 요소를 반복합니다.

  • 3단계 - array.includes() 메서드를 사용하여 array1의 각 요소가 array2에 포함되어 있는지 확인하세요.

  • 4단계 - array1의 단일 요소가 array2에 포함되어 있지 않으면 false를 반환합니다.

  • 5단계 - array2array1의 모든 요소가 포함되어 있으면 for-loop 반복이 성공하고 true를 반환합니다.

아래 예에서는 서로 다른 값을 포함하는 세 개의 배열을 만들었습니다. 두 개의 배열을 매개변수로 받아들이는 isSubset() 함수를 만들었습니다. 이 함수는 array1이 array2의 하위 집합인지 확인하고 해당 결과에 따라 부울 값을 반환합니다.

array2와 array3이 array1의 하위 집합인지 확인하는 중입니다. 사용자는 출력에서 ​​결과를 관찰할 수 있습니다.

으아아아

array.some() 및 array.indexOf() 메서드 사용

array.some() 메서드는 콜백 함수를 매개 변수로 사용하여 조건을 충족하는 참조 배열의 요소 중 하나 이상을 기반으로 부울 값을 반환합니다.

array.indexOf() 메서드는 요소의 인덱스를 반환합니다(요소가 배열에 존재하는 경우). 그렇지 않으면 -1을 반환합니다. 따라서 첫 번째 배열의 요소 중 두 번째 배열의 인덱스가 -1인 경우 첫 번째 배열이 두 번째 배열의 하위 집합이 아니라는 의미입니다.

문법

사용자는 아래 구문에 따라 array.some() 및 array.indexOf() 메서드를 사용하여 배열이 다른 배열의 하위 집합인지 확인할 수 있습니다.

으아아아

위 구문에서 some() 메서드가 true를 반환하면 data1 배열은 data2의 하위 집합이 아닙니다. 따라서 반대 부울 값을 isSubset 변수에 저장합니다.

아래 예제에는 두 개의 문자열 배열이 포함되어 있으며 data1 배열이 data2 배열의 하위 집합인지 확인합니다. data1 배열에는 data2의 모든 요소가 포함됩니다. 따라서 사용자는 출력에서 ​​data2 배열이 data1의 하위 집합임을 확인할 수 있습니다.

으아아아

array.every() 메소드와 set()을 사용하세요

각 요소가 콜백 함수에서 반환된 조건을 충족하면 array.every() 메서드는 true를 반환합니다.

세트에는 고유한 배열 요소가 포함되어 있으므로 모든 배열 요소의 set()을 만들 수 있습니다.

문법

아래 구문에 따라 set 및 every() 메소드를 사용하세요.

으아아아

아래 예에서는 num1 배열의 모든 요소 컬렉션을 만듭니다. 그런 다음 javascript 세트의 has() 메소드를 사용하여 세트에 num2 배열의 각 요소가 포함되어 있는지 확인합니다.

for (let ele of array1) {
   if (!array2.includes(ele)) {
      return false;
   }
}

위 내용은 JavaScript를 사용하여 배열이 다른 배열의 하위 집합인지 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제