자바스크립트에는 값이 없다는 걸 표현할 때, null 과 undefined 두 종류가 있다.

 

이 차이점을 살펴보자면..

null은 의도적으로 '값이 없음'을 표현할 때 사용되고,

undefined는 값이 없다는 걸 나타낸다.

 

무슨 소리인지 잘 모르겠으니 예시를 통해 알아보자.

let abc;
console.log(abc);
// 출력값은 undefined

 위 처럼 변수를 선언 하였으나 아무 값을 할당하지 않았다면 undefined가 출력된다 (왜냐면 값이 비어있으니까).

 

let abc = null;
console.log(abc);
// 출력값은 null

반면, abc라는 변수를 의도적으로 빈 값을 만들고 싶다면 null을 할당하여준다. 그래서 '이 abc 변수는 의도적으로 만든 빈 값을 가진 변수에요' 라는 것을 나타낸다.

 

참고로, null과 undefined를 아래처럼 동등(==)비교와, 일치(===)비교를 할 때 다른 값이 출력된다.

console.log(null == undefined);
// 출력값은 true

console.log(null === undefined);
// 출력값은 false

 

 

 

+ Recent posts