본문 바로가기

JavaScript

Nullish coalescing operator (??)

Nullish coalescing operator (??) 는 왼쪽 피연산자가 null 또는 undefined일 때 오른쪽 피연산자를 반환하고, 그렇지 않으면 왼쪽 피연산자를 반환하는 논리 연산자이다.

or (||) 연산자

변수에 기본값을 줄 때 유용하다.

let name;
console.log("hello", name || "stranger"); //hello stranger

 

or 연산자는 boolean 연산자여서 true, false만 판단한다.

변수 name의 value값 0을 false로 판단한다.

let name = 0;
console.log("hello", name || "stranger"); //hello stranger

 

nullish (??) 연산자

nullish 연산자는 변수값이 null 이거나 undefined 일 때만 작동한다.

let name = 0;
console.log("hello", name || "stranger"); //hello 0

※ nullish (??) 연산자가 or (||) 연산자를 대신할 순 없다. 각자의 쓰임이 다를 뿐이다.

 

 

참고

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Nullish_coalescing_operator