본문 바로가기
프로그래밍 언어/Javascript

자바스크립트 first-defined ??

by pagehit 2021. 7. 23.
반응형

ES2020에서 정의되었다. ??는 nullish coalescing 연산자라고 부른다.

??의 왼쪽 피연산자가 null이 아니고 undefined도 아니면 해당 값을 그대로 반환하고, 아니면 오른쪽에 있는 피연산자를 반환한다.

a ?? b // 아래와 같음
(a !== null && a !== undefined) ? a : b

 

아래 코드 처럼 ??는 첫 번째 피연산자가 false 값이더라도 그 값을 반환한다.

let max = maxWidth || 500; // maxWidth가 숫자 0이나 empty string이면 false이므로 500이 반환
let max = maxWidth ?? 500; // maxWidth가 숫자 0이면 그대로 0이 반환된다

 

반응형

댓글