특수한 형태의 객체로, 순서가 있는 자료를 저장하고 관리하는 용도에 최적화된 자료구조
배열 선언
let arr = new Array(item1, item2, ...); // 잘 사용하지 않음.
let arr = [item1, item2, ...];
arr[0] = item3 // 이와 같이 배열 안의 값을 변경할 수 있음.
// 요소에는 여러 자료형이 섞여있다.
let Arr = ['사과', { name: '심슨' }, true, function() { alert('hi'); }];
length
프로퍼티는 배열의 길이를 나타내며 숫자형 인덱스 중 가장 큰 값에 1을 더한 값이다. 배열 메서드는 length 프로퍼티를 자동으로 조정해줌.length
값을 수동으로 줄이면 배열 끝이 잘린다.let arr = ['apple', 'banana', 'orange']
alert(arr.length); // = 3
arr.length = 2; // length 수동으로 변경
alert(arr); // 'apple', 'banana'
다음 연산을 사용하면 배열을 데큐처럼 사용할 수 있다.
( deque : 처음이나 끝에 요소를 더하거나 빼주는 연산을 제공하는 자료구조 )
push(items)
- ìtems
를 배열 끝에 더한다.pop()
- 배열 끝 요소를 제거, 제거한 요소를 반환shift()
- 배열 처음 요소를 제거하고, 제거한 요소를 반환unshift(items)
- ìtems
를 배열 처음에 더한다.push
와 pop
연산은 shift
와 unshift
보다 빠르다.배열 반복문
for (let i=0; i<arr.length; i++)
- 가장 빠른 방법이며 오래된 브라우저와도 호환 됨for (let item of arr)
- 배열 요소에만 사용되는 모던한 문법for (let i in arr)
- 배열엔 절대 사용하지 않도록 한다.