• Javascript

[Javascript] 널 병합 연산자(Nullish coalescing operator)

Suro_1123 2023. 3. 7. 01:58

 

Javascript 널 병합 연산자

 

 


 

Javascript에서 변수나 객체가 null이거나 undefined일 때 값을 할당하고 싶으면?

 

 

이 예시는 객체에 minNum이 없으면 20을 할당하고

maxNum이 없으면 100을 할당하는 코드이다.

 

if문과 OR 연산자 예시

 

let variable = {minNum : 10}

if(variable.minNum === undefined ||
   variable.minNum === null) {
    variable.minNum = 20;
}

if(variable.maxNum === undefined ||
   variable.maxNum === null) {
    variable.maxNum = 100;
}

console.log(variable) // {minNum: 10, maxNum: 100}

보다시피 if문과 논리 연산자(or)를 이용해서 만들 수 있지만 코드가 너무 길다.

 

 

널 병합 연산자 사용
let variable = {minNum : 10}

variable.minNum ??= 20;
variable.maxNUm ??= 100;

console.log(variable) // {minNum: 10, maxNUm: 100}

코드가 축약되고 보기 좋아진 모습이다.

 

 

 

leftExpr ?? rightExpr

널 병합 연산자는 만약 왼쪽 표현식이 null 또는 undefined일 경우, 오른쪽 표현식의 결과를 반환

(아닐경우 왼쪽 표현식 결과 반환)

 

 

 

'• Javascript' 카테고리의 다른 글

[Javascript] 단락 평가 (논리 연산식)  (0) 2024.10.19