null과 undefined의 차이 간단정리
JavaScript 관련 글입니다.
- JS Event Loop, 자바스크립트 동작 원리
- 호이스팅이란 , var, let, const 차이
- Three.js에 대해
- script, script async, script defer의 차이
- AJAX가 무엇일까?
- 함수선언식과 함수표현식
- null과 undefined의 차이 간단정리
- setTimeout과 setInterval 요약
- this의 여러가지 의미
- Spread Operator(...)?
- JS class Constructor
- ES6 Destructuring Syntax
- default 파라미터 알아보기
- import / export 를 사용한 모듈식 개발방법
- Optional Chaining (?.)
- 프로미스(Promise)에 대해서
- ES8 - async / await
- Symbol 자료형?
- forEach, for in, for of 알아보기
- JSON형식 변환 방법 - JSON.parse(), JSON.stringify()
- 자바스크립트 가비지 컬렉션
- 화살표 함수와 일반함수의 차이
- JavaScript Array.reduce() 간단히 알아보기
이번 글에서는 null과 undefined의 차이에 대해서 간단히 알아보겠습니다.
언뜻봐서는 비슷해보일 수 있지만 명확한 차이가 있습니다.
null vs undefined
null은 어떤 값이 명시적으로 비어져있음을 의미합니다.
반면 undefined는 변수가 선언이 되었지만 값이 할당되지 않은 경우를 의미합니다.
선언만 하고 값을 할당하지 않거나, return값이 없는 함수, 선언되지 않은 객체의 속성의 경우 undefined를 반환합니다.
주의할만한 것들
typeof null // "object" => 사실 null의 타입은 null이 맞다. 초기버전의 버그이다.
typeof undefined // "undefined"
null === undefined // false
null == undefined // true
null === null // true
null == null // true
!null // true
isNaN(1 + null) // false
isNaN(1 + undefined) // true
- 출처 : MDN
End.