JavaScript에서 배열의 length 속성을 활용하면 배열에 저장된 모든 요소를 제거하여 메모리를 비울 수 있으며, 이후 원하는 길이만큼 메모리를 다시 할당할 수도 있습니다.
배열 길이를 0으로 설정해 메모리 비우기
먼저 다음과 같은 배열 객체가 있다고 가정해 보겠습니다.
var arrayObject = [
"John",
"David",
"Mike"
];배열의 length 속성을 0으로 설정하면 배열의 모든 요소가 삭제되고 해당 메모리가 정리됩니다.
메모리를 비운 뒤 다시 할당하는 문법은 다음과 같습니다.
yourArrayObjectName.length = 0; // 메모리 비우기 yourArrayObjectName.length = 4; // 메모리 다시 할당하기
예제 코드
전체 코드는 다음과 같습니다.
var arrayObject = [
"John",
"David",
"Mike"
];
arrayObject.length = 0;
console.log(arrayObject);
arrayObject.length = 5;
for (var i = 0; i < arrayObject.length; i++)
console.log(arrayObject[i]);위 프로그램을 실행하려면 다음 명령어를 사용합니다.
node fileName.js
여기서는 파일 이름이 demo277.js라고 가정하겠습니다.
실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.
PS C:\Users\Amit\javascript-code> node demo277.js [] undefined undefined undefined undefined undefined
코드 설명
arrayObject.length = 0;을 실행하면 배열의 모든 요소가 제거되어 콘솔에 빈 배열 []이 출력됩니다. 이후 arrayObject.length = 5;로 길이를 5로 설정하면 값이 없는 빈 슬롯 5개가 생성되며, 각 슬롯에 접근하면 undefined가 출력되는 것을 확인할 수 있습니다.
이처럼 length 속성은 단순히 배열의 크기를 조회하는 기능을 넘어, 배열의 요소를 동적으로 관리하고 메모리를 제어하는 강력한 도구로 활용할 수 있습니다.