객체 Object

Doyoon Lee·2020년 6월 27일
0

Javascript

목록 보기
3/23

객체의 특징

var coworkers = {
"programmer":"egoing"
"designer":"leeche"
};

document.write("programmer: "+coworkers.programmer";
coworkers.bookkeeper = "duru"; // 이렇게 해도 입력이 된다는거! 
  • 연관된 정보를 정리정돈하는 기능을 가진다.
  • 배열은 순서가 중요하게 작용하지만, 객체는 순서가 없다. key(property) 와 value만 있을 뿐이다.
  • 순서와 상관없이 한 곳에 정보를 넣어서 묶을 수 있게한다.
  • 객체를 정의할 때는 중괄호를 쓴다. { }
  • 인덱스로 문자를 사용하고 싶다면 객체(dictionary)를 사용해야 한다.



객체를 언제 사용하는가?

  • 배열은 아이템에 대한 식별자로 숫자(인덱스)를 사용했다.
  • 이 인덱스를 이용해서 저장된 데이터를 가져온다.
  • 인덱스로 문자를 사용하고 싶다면 객체(dictionary)를 사용해야 한다.


객체를 지정하는 방법(문법)의 예시

var grades = {'amber':100, 'alan':50, 'ron': 40};
var grades = {};
grades['amber'] = 100;
grades['alan'] = 50;
grades['ron'] = 40;
var grades = new Object();
grades['amber'] = 100;
grades['alan'] = 50;
grades['ron'] = 40;

위의 세가지 예시 모두 같은 효과. 객체에 저장하는 문법만 다를 뿐이다.


객체를 호출하는 방법(문법)의 예시

grades['amber'];
grades['am'+'ber'];
grades.alan;

위의 두 줄이 같은 효과. 두번째 줄처럼 플러스를 써도 똑같이 'amber'의 값을 가져온다. 세번째 줄에서 점을 사용한 방식이 간결해서 더 많이 쓴다.


객체와 반복문 - for, in 구문

var grades = {'amber':100, 'alan':50, 'ron': 40};

for(key in grades) {
  document.write("key: "+key+" value: "+grades[key]+"<br />");
  }
  • for(변수 in 객체이름) { 구문 }
  • for, in 의 목적 : loops through the properties of an object
  • 객체가 존재하는 만큼 여러번 loop 가 적용된다.
  • 객체를 돌릴 때와 배열을 돌릴 때 앞의 임시 변수에 들어가게 되는 내용이 달라진다.


for, in 구문 예제 1

var obj = {x:10, y:11, z:12};
for (property in obj){
    console.log("name: " + property + "; value: " + obj[property]);
}

위 코드를 실행한 결과는 다음과 같다.

name: x; value: 10
name: y; value: 11
name: z; value: 12

for, in 구문 예제 2

var array = [10,11,12];
for (property in array){
    console.log("name: " + property + "; value: " + array[property]);
}

위 코드를 실행한 결과는 다음과 같다.

name: 0; value: 10
name: 1; value: 11
name: 2; value: 12

reference : http://codingnuri.com/javascript-tutorial/javascript-for-in-statement.html

0개의 댓글