웹 개발 메모장

[자바스크립트] 객체 란? 본문

옛날../자바스크립트

[자바스크립트] 객체 란?

도로롱주 2018. 1. 3. 13:48




자바스크립트 객체의 기초 개념



객체는 다음과 같은 구조를 갖습니다.


1
2
3
4
5
6
7
var 객체명 = {
    key1 : value1,
    key2 : value2,
    key3 : value3,
    .
    .
}; 
cs



배열이 index value 의 쌍이라고 한다면 객체는 key value 의 쌍이라고 할 수 있습니다. 다만 객체는 value 함수가 올 수 있습니다.


다음과 같은 배열이 있다고 합시다.


1
var arr = ['Kim''student'18];
cs


위 배열은 0번째 요소가 'Kim', 1번째 요소가 'student', 2번째 요소가 18 입니다. 각 요소의 인덱스key인 것입니다. 따라서 arr[0], arr[1], arr[2] 이렇게 접근합니다.



위 배열과 비슷한 객체를 생성해 보겠습니다.


1
2
3
4
5
var userinfo = {
    name : 'Kim',
    job : 'student',
    age : 18
};
cs


객체는 속성(요소)의 순서가 없습니다. 따라서 userinfo[name], userinfo[job], userinfo[age] 이렇게 접근합니다. 


일반적으로 대괄호 [] 보다는 점 .을  많이 사용해서 userinfo.name, userinfo.job, userinfo.age 이렇게 접근합니다.



반복문을 통해 모든 요소를 출력하는 예제입니다.


1
2
3
4
5
6
7
8
9
//배열의 모든 요소 출력
for(var i in arr) {
    alert(i + ' : ' + arr[i]);
}
 
//객체의 모든 속성 출력
for(var key in userinfo) {
    alert(key + ' : ' + userinfo[key]);
}
cs




객체 속성의 추가 / 제거


객체의 속성은 동적으로 추가와 제거가 가능합니다.


1
2
userinfo.sex = 'male'// userinfo 객체에 sex 속성 추가
delete (userinfo.age); // userinfo 객체의 age 속성 제거
cs




Comments