논리적 NOT(!) 은 다음과 같은 값들을 false라고 칭한다.
undefined
null
NaN
0, -0
"", '', ``
false
console.log(!undefined); // true
console.log(!null); // true
console.log(!NaN); // true
console.log(!0); // true
console.log(!-0); // true
console.log(!''); // true
console.log(!false); // true
모두 true가 나온다는 점을 미루어 봤을 때
앞서 나열한 것들은 모두 논리적인 false 임을 알 수 있다.
따라서 undefined, null인 것들을 판별하고 싶을 때
단순히 if(!data) 이렇게 구현하는 것은 의도와 다른 결과가 나올수도 있음을 인지하기.
'개발 > JavaScript' 카테고리의 다른 글
Spread Operator (스프레드 문법) vs Rest Parameter(Rest 파라미터) (0) | 2022.08.23 |
---|---|
[Javascript] 좋은 변수명을 짓는 방법 (coding convention) (0) | 2022.08.08 |
[Javascript] The Basic Vanilla JavaScript Project Setup - 기본 Vanilla JS 프로젝트 세팅 방법 (번역) (0) | 2022.06.09 |
[Javscript] 깊은 복사, 얕은 복사 (0) | 2022.05.25 |
[JavaScript] 클린코드 참고자료 - 2 (객체) (0) | 2022.04.25 |