- 이름과 인덱스로 참조되는 정렬된 값의 집합(자료구조)
- 배열을 구성하는 각각의 값을 배열요소라고 하며, 배열에서의 위치를 가리키는 숫자를 인덱스라고 함
# 배열 선언
let 변수명;
# 배열 초기화
변수명 = [요소1, 요소2, 요소3, ...];
ex)
let arr;
arr = [100, 200, 300];
# 배열 생성 함수
let 변수명 = Array(요소1, 요소2, 요소3 ..);
# 배열의 접근
let arr = [100, 200, 300];
arr[0] // 100
arr[1] // 200
arr[2] // 300
# 배열 예제
<script>
const user = [1, 'apple', '김사과', 20, '서울 서초구'];
console.log(user);
# 인덱스 순서에 따라, 해당 데이터를 출력한다.
console.log(user[0]);
console.log(user[1]);
console.log(user[2]);
console.log(user[3]);
console.log(user[4]);
# 인덱스를 지정하여 해당 인덱스의 데이터를 교체한다
user[4] = '서울 강남구';
console.log(user[4]);
# 배열변수명.length > 데이터의 갯수를 반환한다.
console.log(user.length);
console.log('-------------');
# for 반복문을 통해, 해당 배열의 데이터들을 차례대로 출력한다.
for(let i=0; i<user.length; i++){
console.log(user[i])
}
</script>
출력 결과
배열 함수들
<script>
const user = [1, 'apple', '김사과', 20, '서울 서초구'];
# push(): 배열의 요소를 추가
user.push('여자');
console.log(user);
# pop(): 배열의 마지막 인덱스 번호에 있는 값을 제거하고 반환
let temp = user.pop();
console.log(user);
console.log(temp);
console.log('---------------');
# shift(): 배열의 첫번째 인덱스 번호에 있는 값을 제거하고 반환
console.log(user);
temp = user.shift();
console.log(user);
console.log(temp);
console.log('---------------');
# concat(): 두 배열의 요소를 합침
const profile = ['여자', 'A형', 'istp']
result = user.concat(profile);
console.log(result);
console.log('----------------')
3 join(): 배열 요소 사이에 원하는 문자를 삽입
result = user.join('😀');
console.log(result);
console.log(typeof(user));
console.log(typeof(result));
console.log('---------------');
# sort(): 배열의 요소를 오름차순
const arr = ['a', 'z', 'c', 'f', 'r'];
arr.sort();
console.log(arr);
# reverse(): 배열을 역순으로 재배치
arr.reverse();
console.log(arr) // 역순 -> 내림차순
</script>
출력결과
자바스크립트 배열의 특징
1. 배열 요소의 타입이 고정되어 있지 않음
ex )
let arr = [1, 1.5, '김사과', true];
2. 배열 요소의 인덱스가 연속적이지 않아도 됨
ex)
let arr;
arr[0] = 1;
arr[1] = 100;
arr[4] = 10;
// 빈 인덱스는 undefined가 들어간다.