[TypeScript] Null 병합

Hoplin·2023년 6월 30일
0
post-thumbnail

JavaScript에는 "Falsy" value들이 있다. 예를 들면 null, undefined 뿐만 아니라 0, False, ""(빈문자열) 등이 있다. 그리고 혹시라도 Falsy한 값들이 나오면 이 값을 대체하기 위해서 OR 연산자 (||)를 사용해서 기본값 설정을 해준다.

const inp1 = "";

const result = inp1 || "Default Value";
console.log(result);

/*console

Default Value
*/

하지만 "", 0, False 들을 Falsy한 value가 아닌 실제 값으로 사용하고 싶다면 어떻게 해야할까? TypeScript에서는 Null 병합이라는 기능을 제공한다. 이는 undefined, null 값만 falsy value로 판별하고 이외 값들은 실제 값으로 판별한다.

Null 병합 연산자를 사용하는 위치는 ||를 사용하는 위치와 동일하지만 기호를 ??로 바꾼다는 차이점만 있다.

const inp1 = false;
const data = inp1 ?? "Default Value";
console.log(data);

/*console

false
*/

false를 value로 한 후 Null 병합 연산자를 사용하니 false를 그대로 반환하는것을 볼 수 있다. 반대로 inp1을 undefined 혹은 null로 변경하면, 예상했듯이 "Default Value"를 반환하는것을 볼 수 있다.

const inp1 = undefined;
const data = inp1 ?? "Default Value";
console.log(data);

/*console
false
*/
profile
더 나은 내일을 위해 오늘의 중괄호를 엽니다

0개의 댓글