
프로그램이란
- 프로그램은 현실 세계의 것들을 효율적이고 효과적으로 해결하기 위해 현실세계를 코드화 한 것
- 세상은 관점 기준인 주체와 상대 혹은 대상으로서 객체 그리고 주체와 객체 간의 관계로 구성
- 만약 주체를 객체로 본다면 세상은 객체와 객체간의 관계로 볼 수 있음
- 객체는 사람, 동물, 식물 뿐 아니라 세상의 모든 사물과 개념, 상상까지도 포함될 수 있음
객체의 구성
- 자동차를 예로 들면
- 자동차는 차종, 색상, 브랜드
- 타다, 멈추다, 문을열다 등의 기능으로 구성할 수 있음
- 차종, 색상, 브랜드 등 객체의 정적인 특성을 속성이라 하며
- 타다, 멈추다 등의 동적인 기능들을 메서드로 표현함
객체의 상태값 가져오기
- 속성
- 객체의 속성을 가져오기 위해선 대괄호 표기법과 속성 접근자로 가져올 수 있음
- Grandeur[’color’] or Grandeur.color
- 객체의 메서드를 사용하기 위해선 키에 괄호를 붙여 사용
- 객체가 연관배열인 이유기도 하는 이유임
💡 map
- key-value 쌍으로 구성된 일반적인 형태로 map도 있음
- 배열과 map의 차이는 키가 가질 수 있는 데이터 타입에 따라 구분할 수 있음
- 배열의 키 : 숫자 인덱스
- 연관배열의 키 : 문자 인덱스
- map의 키 : 어떤 데이터 타입도 가질 수 있음
javascript에서 map 사용하기
let map = new Map();
map.set('key1', 'value1');
map.set('key2', 'value2');
let value1 = map.get('key1');
let value2 = map.get('key2');
let hasKey1 = map.has('key1');
let hasKey3 = map.has('key3');
map.delete('key1');
map.delete('key3');
let size = map.size;
map.clear();
for (let [key, value] of map) {
console.log(key, value);
}
map.forEach((value, key) => {
console.log(key, value);
});