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

JavaScript에서 배열 요소에 false 값이 포함되어 있는지 확인하는 방법

JavaScript에서 배열 요소 내부에 false 값이 포함되어 있는지 확인해야 하는 경우가 종종 있습니다. 예를 들어 고객 정보 객체 배열에서 특정 조건(결혼 여부 등)이 거짓인 항목이 존재하는지 검사할 때 유용합니다.

이럴 때 Object.values() 메서드와 some() 메서드를 함께 사용하면 간단하게 확인할 수 있습니다.

Object.values()와 some()의 역할

  • Object.values(): 객체가 가진 값들을 배열 형태로 반환합니다.
  • some(): 배열의 요소 중 하나라도 조건을 만족하면 true를, 그렇지 않으면 false를 반환합니다.

예제 코드

const details = [
  {
    customerDetails: [
      {
        isMarried: true
      },
      {
        isMarried: true
      }
    ]
  },
  {
    customerDetails: [
      {
        isMarried: true
      },
      {
        isMarried: true
      }
    ]
  }
]

const isNotMarried = Object.values(details)
.some(({customerDetails}) => customerDetails.some(({isMarried}) => !isMarried));

console.log(isNotMarried);

프로그램 실행 방법

위 프로그램을 실행하려면 다음 명령어를 사용합니다.

node fileName.js

여기서 파일 이름은 demo75.js입니다.

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

PS C:\Users\Amit\JavaScript-code> node demo75.js
false

코드 설명

위 예제에서 모든 고객의 isMarried 값이 true이기 때문에, 내부 some()은 false 값을 찾지 못하고 최종적으로 false를 반환합니다. 만약 배열 중 하나라도 isMarried: false인 객체가 있다면 결과는 true가 됩니다.

이처럼 Object.values()로 값을 추출한 뒤 some()으로 조건을 검사하면, 중첩된 객체 구조 안에서도 false 값의 존재 여부를 손쉽게 판별할 수 있습니다.