자바스크립트 Ternary 연산자와 null 병합 연산자의 차이점

자바스크립트에서는 조건부 연산자인 Ternary 연산자와 null 병합 연산자를 사용하여 코드를 간결하고 효율적으로 작성할 수 있습니다. 하지만 이 두 연산자는 엄연히 다른 동작을 수행합니다. 이번 포스트에서는 Ternary 연산자와 null 병합 연산자의 차이점을 알아보겠습니다.

Ternary 연산자

Ternary 연산자는 조건식을 평가한 결과에 따라 다른 값이나 표현식을 반환하는 연산자입니다. 아래는 Ternary 연산자의 기본적인 구문입니다.

condition ? expression1 : expression2

condition은 평가할 조건식이고, expression1condition이 참일 경우 반환할 값 또는 표현식입니다. expression2condition이 거짓일 경우 반환할 값 또는 표현식입니다.

Ternary 연산자의 사용 예시를 살펴보겠습니다.

const age = 25;
const message = age >= 18 ? "성인입니다." : "미성년자입니다.";

console.log(message); // 출력: "성인입니다."

위의 예시에서는 age가 18보다 크거나 같은지를 확인하여 condition을 평가하고, condition이 참일 경우 "성인입니다."를 반환하고, 거짓일 경우 "미성년자입니다."를 반환합니다.

null 병합 연산자

null 병합 연산자는 변수가 null 또는 undefined일 경우, 기본값을 지정하고 싶을 때 사용합니다. 아래는 null 병합 연산자의 기본적인 구문입니다.

variable ?? defaultValue

variable은 검사할 변수이고, defaultValuevariable이 null 또는 undefined일 경우 반환할 기본값입니다.

null 병합 연산자의 사용 예시를 살펴보겠습니다.

const name = null;
const defaultName = "Unknown";

const displayName = name ?? defaultName;

console.log(displayName); // 출력: "Unknown"

위의 예시에서는 name이 null이기 때문에 defaultName인 “Unknown”을 displayName에 할당합니다.

결론

Ternary 연산자와 null 병합 연산자는 모두 자바스크립트에서 유용하게 사용되는 연산자입니다. Ternary 연산자는 조건에 따라 다른 값을 반환할 때 사용하고, null 병합 연산자는 변수의 값이 null 또는 undefined일 경우 기본값을 할당할 때 사용합니다. 이 두 연산자를 적절히 활용하여 코드를 단순화하고 가독성을 높일 수 있습니다.

참고 자료