[팁] JavaScript 의 null 병합연산자

개발팁 & 소식

[팁] JavaScript 의 null 병합연산자

자바스트립트에서 Null을 체크하기위한 방법중에

 

if (변수) {}

 

와 같이 사용하는 방법이 있다

 

이렇게 사용하는것도 좋지만

 

새로버전업된 크롬 80 버전부터 지원하는 스크립트중에서

안드로이드/iOS는 지원하는 내용이다.

 

변수가 null일때 대입하지 않고 다른값으로 대치해서 대입하기위해 문장이 길어진다.

 

이때 사용하는 병합연산자 ?? 가 있다.

 

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

논리 연산자 OR ( || )와 달리, 왼쪽 피연산자가  null  또는  undefined 가 아닌 falsy 값이면 반환된다. 즉, 만약 다른 변수 foo에게 기본 값을 제공하기 위해  || 을 사용 경우, falsy 값(  ''  또는  0 )을 사용하는 것을 고려했다면 예기치 않는 동작이 발생할 수 있다. 더 많은 예제는 아래를 보자.

 


const foo = null ?? 'default string';
   
console.log(foo);
   
// expected output: "default string"
   
 
   
const baz = 0 ?? 42;
   
console.log(baz);
   
// expected output: 0
   

 

위 예재는 Firefox, Chrome80, Mobile Chrome, 안드로이드 웹뷰에서만 현재(글 작성시점) 지원하고 있다.

, , , , , , ,

0 Comments
제목
Category
Facebook Twitter GooglePlus KakaoStory KakaoTalk NaverBand