JUST GO

[공통] 오브젝트 본문

JavaScript/학습내용

[공통] 오브젝트

root_go 2022. 10. 4. 16:38

오브젝트

  • 오브젝트(Object)는 하나의 변수에 키(key) 값(Value)으로 이루어진 쌍(Pair)을 여러개 담고자 할 때 사용한다.
  • 배열(Array)과 달리 오브젝트는 인덱스 번호를 가지지 않음으로 사용에 유의한다. 이는 각 쌍이 되는 원소의 순서와 무관한 데이터 컨테이너라는 의미이다.

1. 선언

- 오브젝트는 다음과 같이 중괄호({,})를 이용하여 선언한다.

let someObject = {};
 

- 선언과 동시에 값을 명시하려는 경우 키 : 값의 형태를 쉼표(,)로 구분하여 다음과 같이 초기화 할 수 있다.

let ticket = {
   from: 'ICN',
   to: 'NRT',
   dpt: '2022-09-21 11:26',
   dur: '02:30',
   seat: '17A'
};
 

- 오브젝트가 가지는 쌍의 키는 반드시 문자열이어야 한다. (아래는 잘못된 예)

let someObject = {
  0: 'zero'
};
// 오브젝트의 키는 문자열이어야 한다.
 

2. 쌍 추가/수정

- 오브젝트에 값을 추가하거나, 이미 있는 값을 수정하기 위해 대괄호를 이용한다.

let ticket = {
   from: 'ICN',
   to: 'NRT',
   dpt: '2022-09-21 11:26',
   dur: '02:30',
   seat: '17A'
};
 
// 존재하지 않는 쌍의 추가
// 오브젝트[키] = '값';
ticket['name'] = '김갑수';
 
// 이미 존재하는 쌍의 수정
// 오브젝트[키] = 값;
ticket['name'] = '김갑순';
 

3. 값 가져오기

- 오브젝트에서 어떠한 쌍의 값을 가져오기 위해서는 그 쌍의 키를 활용하여야 한다.

- 존재하지 않는 키를 대입할 경우 undefined를 반환한다.

let ticket = {
   from: 'ICN',
   to: 'NRT',
   dpt: '2022-09-21 11:26',
   dur: '02:30',
   seat: '17A'
};
ticket['from']; // 'ICN'
ticket['seat']; // '17A'
ticket['asdfa']; // undefined

3. 쌍 삭제

- 삭제와 관련된 별도의 함수가 없음으로 delete 연산자와 키를 이용하여 쌍을 삭제한다.

let ticket = {
   from: 'ICN',
   to: 'NRT',
   dpt: '2022-09-21 11:26',
   dur: '02:30',
   seat: '17A'
};
 
// 존재하지 않는 쌍의 삭제
// delete 오브젝트[키];
delete ticket['seat'];
 

4. Object 클래스

- 정적 메서드(Static Method)

a. keys(x) : 오브젝트 x가 가지고 있는 쌍들의 키를 나열한 배열을 반환한다.

let ticket = {
   from: 'ICN',
   to: 'NRT',
   dpt: '2022-09-21 11:26',
   dur: '02:30',
   seat: '17A'
};
let keys = Object.keys(ticket);
keys; // ['from', 'to', 'dpt', 'dur', 'seat']
 
// 오브젝트의 반복
for (let key of keys) {
  console.log(key + ' : ' + ticket[key]);
}
 

 

 

'JavaScript > 학습내용' 카테고리의 다른 글

[공통] 사용자 함수  (0) 2022.10.05
[공통] 연산자  (1) 2022.10.04
[공통] 반복문  (1) 2022.10.04
[공통] 배열  (1) 2022.10.04
[공통] 이벤트  (1) 2022.10.04