JavaScript 코스

객체

개요

자바스크립트에서 객체는 매우 중요한 개념입니다. 자료형 강의에서 자바스크립트의 자료형은 Primitive 타입과 Object 타입이 있다고 했는데, 다시 말하면 Primitive 타입 이외의 모든 변수는 객체 타입이라는 소리입니다.

객체와 Primitive(원시) 타입의 가장 큰 차이점은 Reference(참조)에 있습니다.

원시 타입 변수는 다른 변수에 값을 할당하거나 함수 인자로 넘길 때, 값을 복사하여 전달하지만,
객체는 메모리 주소를 복사시키며 값 자체는 복사되지 않아 같은 객체를 참조하게 됩니다.

배열객체의 일부이며, 함수의 인자로 넘기거나 다른 변수에 참조시킬 수 있습니다.

사용법

자바스크립트에서 좁은 의미의 객체는 키-값 형태의 쌍을 저장할 수 있는 딕셔너리를 의미합니다.
아래는 샘플 JavaScript Object 입니다.

var me = {
	'name': 'young',
	'birth': 1996,
	'sex': 'm'
}

중괄호 {} 를 이용해 생성하며 :,를 이용해 중괄호 내부에서 키-값 쌍을 설정할 수 있습니다.
{} 대신 new Object() 생성자 사용도 가능하며, 인덱스 접근자 [i]를 사용하여 키-값을 설정할 수도 있습니다.

var me = {};
me['name'] = 'young';
me['birth'] = 1996;
me['sex'] = 'm';

프로퍼티 접근자 .을 사용하여 property(키)에 접근할 수도 있습니다.

var me = { 'name': 'young' };
me.birth = 1996;