728x90
반응형
배열에서는 인덱스로써 숫자를 이용했다
만약에 인덱스로 문자를 사용하고 싶으면 객체(dictionary)를 사용해야한다
다른언어에서의 딕셔너리라는 데이터 타입이 객체에 해당한다.
객체는 이렇게 만든다
var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80};
egoing은 key가 되고 10은 value 이다
객체를 만드는 또다른 방법은 다음과 같다
var grades = {};
grades['egoing'] = 10;
grades['k8805'] = 6;
grades['sorialgi'] = 80;
var grades = new Object();
grades['egoing'] = 10;
grades['k8805'] = 6;
grades['sorialgi'] = 80;
객체를 만들었으니 필요한 값을 가져와보자
key를 통해 저장된 값을 불러와보자
var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80};
alert(grades['sorialgi']);
결과로 80이 출력 될 것이다
저렇게 [ ] 로 안해도
alert(grades.sorialgi);
이런식으로 . 만 찍고 불러올 수도 있다
for in loop
객체에 저장된 데이터를 기준으로 반복작업을 해보자
var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80};
for(key in grades) {
document.write("key : "+key+" value : "+grades[key]+"<br />");
}
그냥 단순하게 객체 안의 원소들을 출력하는 코드이다
결과는 다음과 같다
key : egoing value : 10
key : k8805 value : 6
key : sorialgi value : 80
for (key in 객체이름){
}
꼴로 사용하면 된다
객체지향 프로그래밍
객체에는 객체를 담을수도 있고
함수를 담을 수도 있다
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();
객체안에 데이터들이 있는데
value로써 객체가 들어가기도 하고
함수가 들어가기도 한다.
참고 : 생활코딩 - 자바스크립트
728x90
반응형