이번에는 object와 undifined 그리고 null에 대하여 정리해야겠다.


object는 객체라고도 하며 속성의 집합이라는 것은 정보처리를 공부하면 어느정도 나오는 사실이다.

자바스크립트에서도 마찬가지로 속성들을 모아놓은것이 객체이다.



var empty_obj = {}; // 선언은 중괄호를 이용하여 하게된다.

typeof(empty_obj); // object로 출력된다.


객체에 속성을 추가시켜서 제대로된 객체를 만들려면


var man = {
	name : "홍길동",
	age : 20,
	height : 180
}; // man 안에 여러가지 속성을 선언했다.


이런식으로 선언하면 된다. man이라는 객체의 속성은 각각 name, age, height가 되는것이다.


이런 object의 속성에 접근하는 방법은


간단하게 두가지 방법이 있다.



// 속성의 접근하는 법

man.name; // man 객체 안에 name 속성에 접근한다.

man["name"] // 문자열로 적어주어야한다.


다음은 undefined 인데 뜻 그대로 '정의되지 않은 상태' 이다.


그냥 생성만 해두고 초기화를 하지않았을 때 나타나게 된다.


또는 값을 모르거나 선언되지 않은 것도 나타나게 된다.




// undefined : 변수가 선언만 되어있고 초기화 되지 않은상태

var uninitialized_var; // undefined상태
typeof(uninitialized_var); // 마찬가지로 undefined상태

var obj = {
	x:1,
	y:2
};

obj.x // 1
obj.y // 2
obj.z // z는 모르기 때문에 undefined상태
typeof(obj.z); // undefined상태


마지막으로 null의 개념은 역시 정보처리를 공부하거나 뜻을 알거나 하면 이제 상당히 익숙해진 개념인데 "비어있는 상태" 이다.


null은 값은 없지만 그 공간은 있는 상태로 개발자가 의도적으로 만들수 있다.



var null_var;
null_var = null;

null_var; // null 상태
typeof(null_var); // object 타입이다.


이렇게 null은 원한다면 개발자가 변수에 초기화 시켜줄수도 있다. 그리고 타입은 비어있는 공간이기 때문에 object 타입으로 나타나게 된다.


NaN이나 기타 다른 자료형이 있지만 그런것은 나중에 정리해야겠다.

'JavaScript > Vanilla JS' 카테고리의 다른 글

setInterval(), setTimeout()  (0) 2019.07.29
String 이어붙이기  (0) 2017.09.29
산술연산자 & 관계연산자  (0) 2017.09.29
자료형  (0) 2017.09.29
변수 (Variable)  (0) 2017.09.29