[JS] 자바스크립트 언어 기본 - 섹션 9 객체

황은하·2021년 11월 10일
0

JS

목록 보기
11/19

객체의 소개와 문법

객체

: Object.
배열과 유사한 역할.
객체도 연관덴 데이터를 담기 위한 그릇이다.

배열 vs 객체

배열 : 인덱스가 자동으로 있다. (0, 1, 2, ...)
객체 : 인덱스를 등 내가 원하는 문자로 지정 가능. (first, second, ...)
-> 연관배열, 맵, 딕셔너리

var grades = {'eunha': 10, 'dayeon': 10, 'momo': 100};

객체에서 인덱스는 eunha, dayeon, momo 가 된다.

// 위와 같음
var grades = {};
grades['eunha'] = 10;
grades['dayeon'] = 10;
grades['momo'] = 100;

// 위와 같음
var grades = new Object();
grades['eunha'] = 10;
grades['dayeon'] = 10;
grades['momo'] = 100;
  • 값 가져오기
    grades['momo']
    grades.momo
    grades['mo'+'mo']
    grades.'mo'+'mo' -> (x)

key & value


객체와 반복문

반복문을 이용해 객체를 다루는 법

배열 - 저장된 데이터들이 순서를 가지고 있다.
객체 - 순서가 없다. 키와 밸류만 있을 뿐이다.

key in grades
key in 객체명
-> 객체의 키들을 key에 담아 하나씩 모두 돈다.

var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80};
for (key in grades) {
    document.write("key : " + key + " value : " + grades[key] + "<br />");
}

// 위의 for문과 같다. key -> name (이름 변경)
for (var name in grades) {
	document.write("key : " + name + " value : " + grades[name] + "<br />");  
}

객체의 key를 가져올 때 for in문을 쓴다.
고로 배열에서도 쓸 수 있다.
배열에서 사용하면 key 가 인덱스가 되어 0, 1, 2, ... 이 된다.


객체 지향 프로그래밍

객체 내의 value가 객체일 수도, 함수일 수도 있다.

this
: js의 약속된 변수. 이 함수가 속해있는 객체를 가리키는 변수

console.log(name, this.list[name])
-> , 를 이용하여 많은 것을 출력할 수 있다.

var grades = {
    'list': {'egoing': 10, 'k8805': 6, 'sorialgi': 80},
    'show' : function(){
        for (var name in this.list){
            document.write(name + ':' + this.list[name] + "<br />");
        }
    }
};
grades.show();
// grades['show'](); 위와 같다.
  • 객체 지향 프로그래밍
    : 서로 연관되어있는 데이터와 연관되어있는 처리를 하나의 그릇에 모아서 그루핑해둔 프로그래밍
profile
차근차근 하나씩

0개의 댓글