객체
개요
자바스크립트에서 객체는 매우 중요한 개념입니다. 자료형 강의에서 자바스크립트의 자료형은 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;