[Week11] 정적 배열과 동적 배열
2024년 12월 28일
정적 배열
- 크기가 고정되어 있고 배열에 들어갈 수 있는 요소의 갯수에 제한이 있는 자료 구조 입니다.
- 예시
// 크기가 5로 고정된 배열 생성 (초기값 undefined)
const staticArray = new Array(5);
console.log(staticArray.length); // 5
staticArray[0] = 1;
staticArray[1] = 2;
staticArray[2] = 3;
staticArray[3] = 4;
staticArray[4] = 5;
// 초과해서 값을 넣을 수는 있지만,
// 원래 의도는 고정된 크기로만 사용하는 것
staticArray[5] = 6;
console.log(staticArray); // [1, 2, 3, 4, 5, 6] ← JS는 허용함 (실제론 동적)
동적 배열
- 크기가 변하고 배열에 요소를 계속 추가할 수 있는 자료 구조 입니다.
- 예시
const dynamicArray = [];
dynamicArray.push(1);
dynamicArray.push(2);
dynamicArray.push(3);
console.log(dynamicArray); // [1, 2, 3]
dynamicArray.push(4, 5, 6); // 더 넣어도 문제 없음
console.log(dynamicArray); // [1, 2, 3, 4, 5, 6]
구분 | 정적 배열 | 동적 배열 |
크기 결정 | 고정 | 가변 (자동 확장) |
성능 | 빠름 | 크기 확장 시 느림 |
유연성 | 낮음 | 높음 |
메모리 사용 | 예측 가능 | 약간 비효율적일 수 있음 |