-
값이 확정되어있는 피연산자를 찾는 법 = nullish 병합 연산자 '??'FrontEnd/JavaScript 2023. 1. 24. 05:53반응형
nullish병합 연산자란 뭘까?
"nullish 병합 연산자(nullish coalescing operator) ??를 사용하면 짧은 문법으로 여러 피연산자 중 그 값이 ‘확정되어있는’ 변수를 찾을 수 있습니다. " 라고 설명하고 있다.
여기서 확정되어 있는이란 null이나 undefined가 아니라는 뜻이다.
let firstName = null; let secondName = null; let nickName = "David"; console.log(firstName??secondName??nickName??"익명")
위 코드는 출력해보면
nickName인 "David"가 출력된다.
만약 nickName까지 undefined였다면 마지막에 있는 "익명"이 출력됐을 것이다.
nullish연산자는 ||(OR연산자)와 비슷한 것처럼 보이지만 매우 다른 차이를 가지고 있습니다.
let percent = 0; console.log(percent||"Error") // Error console.log(percent??"Error) // 0
OR연산자는 첫번째 truthy값을 반환하므로 0은 falsy값에 해당하기 때문에 Error을 출력합니다.
그러나 nullish연산자는 성질에 의해 undefined나 null값일 때만 우항에 있는 피연산자를 출력하므로 0를 출력합니다.
이러한 특징때문에 0을 할당받을 수 있는 변수에 대한 연산을 할 때는 ||보다 nullish를 사용하는 것이 적절합니다.
안전성 이슈로 인해 nullish연산자(??)는 &&나 ||와 함께 사용하지 못하므로 주의하세요!
더욱 자세한 설명은 아래 링크 글을 참조하시면 좋습니다.
반응형'FrontEnd > JavaScript' 카테고리의 다른 글
0.1+0.2 = 0.3이 아니다? - 부정확한 계산 (0) 2023.01.30 var Hoisting이 뭘까?! (0) 2023.01.22 JS엔진이 일을 처리하는 방법 (0) 2023.01.21 11장 원시 값과 객체의 비교 (0) 2021.12.30 10장 객체 리터럴 (0) 2021.12.24