JavaScript 자료형 마지막!
JavaScript자료형에는 숫자형, 문자형, 불린 등이 있다.
값을 저장할 때 아무것도 저장을 안하는 경우도 있고 의도적으로 null값을 저장하기도 한다.
두 경우가 콘솔에 다르게 표시되는데 이번 글에서는 null과 undefined에 대해 알아보려 한다.
7. null과 undefined
둘 다 값이 없다는 의미이다!
하지만 완전히 다르다.
???
무엇이 다른지 살펴보자!
null은 값이 없다는 것을 의도적으로 표현할 때 사용한다.
undefined는 코드를 실행할 때 값이 없다는 것을 확인할 수 있는 것이다.
둘을 명확하게 이해하지 못한다면 코드를 작성할 때 실수가 생긴다.
이해 필수!!!
1) 변수 지정을 할 때 아무 값을 안 넣은 경우
자바스크립트에서는 값이 주어지지 않은 변수에는 기본적으로 콘솔에 undefined가 출력된다.
다시 말해 undefined는 선언을 한 다음 값을 정해주지 않았다는 것을 의미한다.
코드를 실행할 때 지정된 값이 없다는 것을 콘솔에서 확인할 수 있다.
2) 변수 지정을 할 때 null값을 넣은 경우
의도적으로 값이 없다는 것을 표현할 때 null을 쓴다.
Yunju변수와 JS변수는 전혀 다르다.
Yunju 변수는 변수 값이 선언되어 있지 않고 JS변수는 null이 선언되어 있다.
그래서 콘솔에서 보이는 값도 다르다.
의미는 모두 값이 없다는 것을 표시하는 것이지만
값이 지정되지 않았는지,
값이 없음을 의도적으로 표현한 것인지가 다르다!
예를 들어 살펴보자!
let x;
console.log(x);
let y = x;
x = null;
console.log(y);
console.log(x);
x = y;
console.log(x);
먼저 아무런 값을 할당하지 않고 변수 x를 선언했다.
그러므로 일단 undefined가 출력된다.
그리고 변수 y 값에 변수 x가 가지고 있는 undefined값을 할당해 주었다.
x에 null을 할당하더라도 일단 y값은 undefined 값이 할당된 상태다.
그러므로 또 undefined가 출력된다.
x는 이제 null이 할당되었으므로 null이 출력된다.
다시 x에 y가 가지고 있는 undefined값을 할당해주었다.
그러므로 undefined가 출력된다.
정리하면
undefined
undefined
null
undefined
가 출력된다.
null과 undfined 정리까지 마무리가 되었다.
자바 스크립트의 기본적인 자료형에 대해 모두 살펴보았는데 여러 번 코드를 작성하면서 확인하고 익혀야한다.
파이썬을 배우면서 익혔던 기본적인 원리들은 그대로 적용되지만 기호가 조금씩 다르고 우선순위도 좀 다른 것 같다.
다음 글부터는 함수, return문, 변수, 상수 등 좀 더 심화된 개념을 정리해보려한다.
'프로그래밍 > Javascript' 카테고리의 다른 글
JavaScript 기초 : 추상화 2. 함수 정의와 호출 (0) | 2020.09.07 |
---|---|
JavsScript 기초 : 추상화 1. 할당 연산자(Assignment operators) (0) | 2020.09.07 |
JavaScript 기초 : 자료형 6. 템플릿 문자열 (0) | 2020.09.04 |
JavaScript기초 : 자료형 5. 형 변환ⅰ,ⅱ (0) | 2020.09.04 |
JavaScript기초 : 자료형 4. type of 연산자/ 연산자 우선순위 (0) | 2020.09.04 |