-
javascript) null과 undefined와 빈문자열"" 체크하기javascript 2023. 11. 30. 15:38
null과 undefined와 빈문자열"" 체크하기
null은 "의도적으로" 값이 할당되지않은 상태
undefined는 값이 아직 할당 되지않은상태
null, undefined를 체크하기)
ㄴnull과 undefined과 빈문자열""는 모두 false로 간주된다 (false그 자체는 아니다!)(" "(공백은) true로 간주)
그래서
null == false; //false
null === false; //false
undefined == false; //false
undefined ===false; //false
위는 모두 false 반환이 되지만(false 자체가 아니니까),null과 undefined앞에 !!를 붙이면 boolean값으로 변환되므로
!!null == false; // true
!!null === false; //true
!!undefined == false; // true
!!undefined === false; // true
ㄴ위는 모두 true로 반환이 된다. 이를 이용하여 null,undefined를 체크하는 조건식을 더 간결하게 작성할 수 있다
예제)
var tmp = null;
if(!!tmp){
tmp가 null,undefined가 아닌경우
}else{
tmp가 null,undefined인 경우
}
빈문자열 ""과 " "(공백)를 체크하기)
ㄴtrim()으로 좌우공백을 제거해준뒤, 문자열의 길이가 0인지체크
예제)
vat tmp = ""
if(tmp.trim().length !== 0){
//tmp가 ""과 " "이 아니라면 실행될 코드
}
null,undefined,"", " "를 모두 체크하기)*
ㄴ옵셔널 체이닝(?.) 이용
ㄴ옵셔널 체이닝은 대상이 undefined나 null일 경우 undefined를 반환
예제)
var tmp = " "
if(!!tmp?.trim()){
null,undefined,빈문자열""," "(공백)이 아닌 경우 실행되는 코드
}else{
}
ㄴnull,undefined 인경우 : 옵셔널 체이닝으로 undefined 반환, trim()무시, !!연산자로 undefined가 false로 변환
ㄴ"", " "(공백) 인경우 : 옵셔널 체이닝 무시, trim으로 ""으로 반환, !!연산자로 ""가 false로 반환'javascript' 카테고리의 다른 글
자바스크립트) JS object와 JSON 차이점 (0) 2023.12.18 javascript) 자바스크립트 고급문법 8가지 (0) 2023.12.10 javascript) 호이스팅, var, let, const, 람다식 (1) 2023.12.09 javascript) "=="과 "==="의 차이 (1) 2023.12.01