728x90
반응형
undefined는 아예 박스가 없는 상태, null은 박스는 있는데 안에 아무것도 없는 것과 같다.
let a = undefined;
let b = null;
console.log(typeof(a)); // 'undefined'
console.log(typeof(b)); // 'object'
undefined의 type은 'undefined'
null의 type은 'ojbect'다.
undefined는 말 그대로 아무것도 정의되지 않은 상태다.
호이스팅 포스팅을 보면 함수 선언부만 갖고 함수 호출을 했을 때 정의부를 가져올 수 없어서 undefined가 뜬다.
null은 값이 없음을 나타낸다. 할당이 되지 않은 undefined 상태가 아니라, 빈 값이 할당된 상태다.
둘 다 boolean값에선 false로 취급된다.
let a = undefined;
let b = null;
console.log(a==b); // true
console.log(a===b); // false
이전에도 썼지만 undefined와 null을 == 연산자(동등 연산자)로 비교해보면 true로 나온다.
728x90
반응형
'프론트엔드✏️' 카테고리의 다른 글
Javascript와 Node.js, JS V8 Engine (0) | 2022.07.01 |
---|---|
==(동등 연산자), ===(일치 연산자)의 차이점 (0) | 2022.07.01 |
토끼는 당근과 사과 둘 다 먹고 싶어! 얕은복사와 깊은 복사. Shallow Copy와 Deep Copy (0) | 2022.07.01 |
나 보고 있는거야?!?!?!! observable/promise. Hot&Coooool (0) | 2022.07.01 |
*-커비 프로젝트-* MBTI와 로스트아크 캐릭터! (0) | 2022.06.12 |