배열(Array) 객체란?
- 하나의 변수에 여러 개의 값을 순차적으로 저장할 수 있는 데이터 구조
- 데이터 타입은 Object
- 여러 종류의 데이터 타입을 저장 가능
- 배열의 크기는 동적으로 변화
- 각 요소는 0부터 시작하는 인덱스를 가지고 이 인덱스를 사용해 배열의 특정 요소에 접근
- 반복문을 이용하여 배열의 각 요소에 접근 가능
- 배열을 참조 타입으로 변수에 배열을 할당하면 메모리 주소가 할당
// 배열 생성
const arr = ['홍길동', '갑돌이', '갑순이'];
// 인덱스를 통해 요소 '갑돌이'에 접근
// 인덱스는 0부터 시작
arr[0]; // '홍길동'의 인덱스는 0
arr[1]; // '갑돌이'의 인덱스는 1
arr[2]; // '갑순이'의 인덱스는 2
Spread Operator로 배열 복사
- 배열은 참조형 타입이므로 단순히 대입연산자를 이용하면 배열이 복사 되는 것이 아니라 참조 변수가 되므로 복사해서 별도의 배열로 다루기 위해서는 Spread Operator를 이용(얕은 복사)
let arr1 = [1, 2];
let arr2 = [...arr1]; // Spread Operator를 이용해서 배열 복사
arr2[2] = 15;
console.log(arr1); // [1, 2]
console.log(arr2); // [1, 2, 15]
Array.length : number
// 배열 생성
const arr = ['홍길동', '갑돌이', '갑순이'];
arr.length; // 3
Array.isArray(arg) : boolean
- 배열인지 아닌지 체크
- 전달된 아규먼트가 배열이면 true, 아니면 false 반환
// 배열 생성
const arr = ['홍길동', '갑돌이', '갑순이'];
Array.isArray(arr); // true
Array.isArray(1); // false
Array.indexOf(searchElement) : number