Nullish coalescing
function foo(baz){
return baz ?? 'default string';
}
foo(null)
foo(undefined)
foo("hello")
- null이거나 undefined인 경우 오른쪽 표현식(default string)을 반환합니다
default parameter와의 차이점
function foo(baz="default string"){
return baz;
}
foo(undefined)
foo(null)
foo("hello")
- default parameter는 파라미터로
null
을 전달하면 그대로 반환합니다
Logical OR operator ||
function foo(baz){
return baz || "default string";
}
foo(false)
foo(0)
foo(undefined)
foo(null)
foo("")
||
는 왼쪽표현식이 falsy
한 값인 경우 오른쪽 표현식을 반환한다
- nullish coalescing과는 다른 결과를 반환할 수 있으니 조심해야한다
값 뿐만 아니라 함수도 가능하다
const result = getPrevData() ?? getPresentData();