티스토리 뷰

생활코딩/자바스크립트

객체

리피아 2021. 8. 17. 06:18
728x90

객체(Object)

  • 배열 : 아이템에 대한 식별자로 숫자 사용(인덱스)
  • 인덱스로 문자를 사용하려면 객체(Object)를 사용
  • 다른 언어에서 연관배열(associate array) 또는 맵(map), 딕셔너리(Dictionary)라는 데이터 타입이 객체에 해당

 

객체의 생성

 

var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80};

 

  • 객체 생성방법 1
  • egoing은 key, 10은 value

 

var grades = {};

grades['egoing'] = 10;

grades['k8805'] = 6;

grades['sorialgi'] = 80;

 

  • 객체 생성방법 2
  •  

var grades = new Object();

grades['egoing'] = 10;

grades['k8805'] = 6;

grades['sorialgi'] = 80;

 

  • 객체 생성방법 3

 

var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80};

alert(grades['sorialgi']);           //결과 80

 

  • 객체 속성 접근방법1

 

alert(grades.sorialgi);

 

  • 객체 속성 접근방법2

 

객체와 반복문

var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80};

for(key in grades) {

     document.write("key : "+key+" value : "+grades[key]+" ");

}

 

결과↓

 

key : egoing value : 10

key : k8805 value : 6

key : sorialgi value : 80

 

  • for 문은 in 뒤에 따라오는 배열의 key 값을 in 앞의 변수 key에 담아서 반복문을 실행
  • 반복문이 실행될 때 변수 key의 값으로 egoing, k8805, sorialgi가 순차적으로 할당

 

객체지향 프로그래밍

 

var grades = {

     'list': {'egoing': 10, 'k8805': 6, 'sorialgi': 80},

     'show' : function(){

         for(var name in this.list){

             document.write(name+':'+this.list[name]+"

");

         }

     }

};

grades.show();

 

 

  • 객체에는 객체를 담을 수도 있고, 함수도 담을 수 있음
  • 로직을 객체에 그루핑해서 객체라는 부품을 조립해 소프트웨어라는 완제품을 만들 수 있게 함

'생활코딩 > 자바스크립트' 카테고리의 다른 글

UI와 API 그리고 문서보는 법  (0) 2021.08.20
모듈  (0) 2021.08.20
배열  (0) 2021.08.17
함수  (0) 2021.08.17
반복문  (0) 2021.08.17
댓글