Nullish coalescing

function foo(baz){
 	return baz ?? 'default string'; 
}
foo(null) // default string
foo(undefined) // default string
foo("hello") // hello
  • null이거나 undefined인 경우 오른쪽 표현식(default string)을 반환합니다

default parameter와의 차이점

function foo(baz="default string"){
 	return baz; 
}

foo(undefined) // default string
foo(null) // null
foo("hello") // hello
  • default parameter는 파라미터로 null을 전달하면 그대로 반환합니다

Logical OR operator ||

function foo(baz){
 	return baz || "default string"; 
}

foo(false) // default string
foo(0) // default string
foo(undefined) // default string
foo(null) // default string
foo("") // default string
  • ||는 왼쪽표현식이 falsy한 값인 경우 오른쪽 표현식을 반환한다
  • nullish coalescing과는 다른 결과를 반환할 수 있으니 조심해야한다

값 뿐만 아니라 함수도 가능하다

const result = getPrevData() ?? getPresentData();
profile
소프트웨어 엔지니어, 프론트엔드 개발자

0개의 댓글

Powered by GraphCDN, the GraphQL CDN