티스토리 뷰
반응형
요즘 자주 사용하던 구문에 대해서 궁금증이 생기고 있다. 그 중 하나로 “기본값 할당”이다.
서버에서 데이터를 조회하거나 Input Element로 부터 데이터를 받을 때 등 변수에 undefined나 null일 수 있을때 기본값을 할당하는데, 개발자들 사이에도 여러 방법이 있었다. 요약해서 정리하자면 아래와 같다.
- A || B (OR 논리연산자, Logical OR): A가 참일 경우 A, 그 외 B를 반환
- A ? A : B (삼항연산자, The conditional ternary operator) : A가 참일 경우 A, 그 외 B를 반환
- A ?? B (병합연산자, Nullish Coalescing) : A가 null 또는 undefined이 아닌 경우 A를 반환하고, 그렇지 않으면 B를 반환
즉, OR 논리연산자와 삼항연산자는 조건 A가 falsy한 값인지 확인한다(false, null, undefined, 0, “”).
병합연산자는 조건 A가 null, undefined인지 확인한다.
결론을 내자면, 기본값 할당을 할 때는 OR 논리논리연산자나 삼항연산자를 사용할 경우 false, 0, “”와 같은 falsy한 값을 가지고 있을 경우에도 대체값을 할당하기 때문에 병합연산자만(??)을 사용하는게 좋고, 0이나 빈 문자열도 검출해야할 때만 OR 논리연산자(||)나 삼항연산자(? :)를 이용하면 좋겠다.
반응형
'Javascript와 Typescript' 카테고리의 다른 글
Array.prototype.slice의 참조값 (0) | 2024.12.19 |
---|---|
undefined와 null, 언제 사용해야 할까? (0) | 2024.12.17 |
Javascript Numeric Separators (0) | 2024.12.02 |
ECMAScript 버전별 특징 (0) | 2024.11.30 |
ESlint warning @typescript-eslint/no-var-requires (0) | 2024.11.21 |
- Total
- Today
- Yesterday
반응형