티스토리 뷰
// 배열 (Array)
let courseRanking = {
'1st': '자바스크립트 프로그래밍 기초',
'2st': 'Git으로 배우는 버전 관리',
'3st': '컴퓨터 개론',
'4st': '파이썬 프로그래밍 기초',
}
코드잇의 인기순위를 1등부터 4등까지 나열한 객체를 만들어 보았습니다. 그런데 사실 이런 경우에는 프로퍼티 네임보다는 값들의 순서가 좀 더 중요한 상황이기 때문에 프로퍼티 네임은 지워버리고 이 값들의 순서만 유지해도 될 것 같은데요.
이럴 때는 객체보다 배열이라는 것을 활용하는 것이 좀 더 효율적입니다. 영어로는 Array라고 부르는데요.
let courseRanking = [
'자바스크립트 프로그래밍 기초',
'Git으로 배우는 버전 관리',
'컴퓨터 개론',
'파이썬 프로그래밍 기초'
]
이 객체를 배열로 만들어 보겠습니다. 배열은 중괄호 대신 이렇게 대괄호로 만들고 쉼표로 구분해서 순서대로 값을 입력하면 courseRanking이라는 배열이 만들어집니다. 참고로 배열 안에 있는 이 값들은 요소, 영어로는 엘리먼트(element)라고 부릅니다.
배열의 독특한 점은 이렇게 대괄호 안의 각 요소별로 순서를 알려주는 숫자가 매겨진다는 것입니다. 이 숫자 갓을 인덱스(index)라고 부르고 이 인덱스가 객체랑 비교했을 때 프로퍼티 네임의 역할을 하는 것입니다.
// index == PropertyName
console.log(배열이름[index]);
인덱스를 통해서 배열의 요소를 가져오는 방법은 객체의 대괄호 표기법과 똑같습니다. 배열 이름 뒤에 대괄호를 열고 이 안에 원하는 인덱스를 넣어주면 됩니다.
이렇게 인덱스를 통해서 요소에 접근하는 것을 인덱싱(indexing)이라고 부르는데, 한 가지 주의해야 할 부분은 인덱스는 1부터 시작하는 것이 아니라 0부터 시작한다는 것입니다.
그래서 이 배열의 첫 번째 요소에 접근하려면 courseRanking에 0번 인덱스 라고 저장하고 실행하면 '자바스크립트 프로그래밍 기초'가 잘 출력이 되고 만약 이 값을 2로 바꿔주면 3번째에 있는 '컴퓨터 개론'이 출력되는 것을 확인할 수 있습니다. 만약 여기서 2+! 이렇게 만들어 주면 3이 되니까 '파이썬 프로그래밍 기초'가 나오게 됩니다.'
정리하면 배열은 객체와는 조금 다르게 단순히 여러 개 값들을 쉼표(,)로만 구분해서 대괄호로 담고 있는 형태로 각 값들은 요소라고 부르고 이 요소들은 인덱스라는 순서를 가지는 특징이 있었습니다. 그렇기 때문에 랭킹처럼 순서가 있는 값을 만들 때는 객체보다 배열을 활용하는 것이 좀 더 간결하고 효율적입니다.
또 랭킹처럼 꼭 순위가 아니더라도 순서가 있는 여러 값들의 묶음은 공항철도 노선, 해리포터 시리즈, 십이지, 십간 등 다양하게 찾아 볼 수 있습니다. 배열을 활용하면 객체보다 훨씬 더 간단하게 표현할 수 있습니다.
혹은 너무 순서에 신경 쓰지 말고 단순하게 여러 값의 묶음이 필요한 경우에도 활용될 수 있습니다. 과일묶음, 세트 메뉴 묶음 등을 배열로 표현할 수 있습니다.
'프론트엔드 > JavaScript' 카테고리의 다른 글
[배열] 05. 배열 메소드 (1) (0) | 2022.10.07 |
---|---|
[배열] 03. 배열 다루기 (0) | 2022.10.06 |
[객체] 13. Date객체 Tip (1) | 2022.10.04 |
[객체] 12. Date객체 (1) | 2022.10.03 |
[객체] 10. for...in 주의사항 (0) | 2022.10.02 |
- Total
- Today
- Yesterday
- redux-middleware
- filter
- redux
- 얕은복사
- 기본형 데이터
- findindex
- undefined
- redux thunk
- map
- null
- EVERY
- 비교 연산자
- redux middleware
- 동적(dynamic) 언어
- 불변 객체
- 참조형 데이터
- redux-thunk
- find
- some
- foreach
- 느슨한 타입(loosely typed)
- 타입변환
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |