배열(Arrays)
배열이란?
- 다루는 자료의 수가 많아질 때, 이를 다루기 위해 사용하는 자료구조
- 하나의 변수에 여러 자료를 저장할 수 있으며, 반복문을 이용해 효율적으로 접근이 가능
- 배열에서 인덱스는 유일무이한 식별자로 사용된다.
배열의 특징
- 크기(Element의 개수)가 정해져 있다.
- 자료 구조에 기능(메서드)이 포함되어 있지 않다.
- 자료가 메모리상에 빈틈 없이 연속으로 위치해 있다.
- 인덱스를 활용하여 자료에 빠르게 접근할 수 있다.
- 특정 형식의 Element만을 허용한다.
배열의 단점
- 배열의 길이는 생성 시 정해져, 변경할 수 없다.
- 가변 길이 배열은 배열의 크기를 변경할 때 마다 새 배열을 만든다.
- Element를 제거할 경우, 배열에 빈 틈이 생긴다.
- 기존 Element의 인덱스를 유지하기 위해 빈 틈을 유지한다.
- 실제로는 Element의 삭제가 불가능하며, 사용이 불가능하도록 내부적으로 막는다.
Javascript와 배열
- Javascript(Js)의 Array는 배열 자료구조와는 다르다. 사용자 친화적인 고수준의 기능을 포함하고 있다.
- push(뒤로 삽입), pop(뒤로 추출), shift(앞으로 추출), unshift(앞으로 삽입), concat, splice ...