>웹 프론트엔드 >JS 튜토리얼 >정의되지 않은 속성 없이 JavaScript에서 조건부로 개체 멤버를 추가하려면 어떻게 해야 합니까?

정의되지 않은 속성 없이 JavaScript에서 조건부로 개체 멤버를 추가하려면 어떻게 해야 합니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-23 10:27:45795검색

How Can I Add Object Members Conditionally in JavaScript Without Undefined Properties?

JavaScript에서 조건부로 개체 멤버 추가

JavaScript에서는 개체에 동적으로 멤버를 추가하는 것이 일반적입니다. 그러나 이러한 추가가 조건부여야 하는 경우 가장 간단한 접근 방식은 정의되지 않은 멤버로 이어지는 경우가 많습니다.

관용적 코드를 생성하려는 시도에서:

a = {
    b: (someCondition? 5 : undefined)
};

b 멤버가 someCondition 결과와 관계없이 객체를 생성하며, 조건이 false인 경우 값이 정의되지 않게 됩니다.

이 문제를 해결하려면 보다 간결한 솔루션을 사용할 수 있습니다. 확산 연산자(...) 및 논리 AND 단락 평가(&&)를 사용하여 사용:

const a = {
   ...(someCondition && {b: 5})
}

이 코드를 사용하면 조건 연산자가 필요하지 않습니다. 스프레드 연산자는 중괄호를 a 객체로 확장하고 someCondition이 true인 경우 b 멤버를 추가합니다. 논리적 AND 단락 평가는 someCondition이 true인 경우에만 중괄호가 평가되도록 보장하여 정의되지 않은 멤버가 추가되는 것을 방지합니다.

이 접근 방식은 여러 조건부 멤버를 처리하도록 쉽게 확장할 수 있습니다.

const a = {
   ...(conditionB && {b: 5}),
   ...(conditionC && {c: 5}),
   ...(conditionD && {d: 5}),
   ...(conditionE && {e: 5}),
   ...(conditionF && {f: 5}),
   ...(conditionG && {g: 5}),
}

위 내용은 정의되지 않은 속성 없이 JavaScript에서 조건부로 개체 멤버를 추가하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.