JavaScript에서 모든 요소가 0으로 초기화된 배열을 만들어야 하는 경우가 종종 있습니다. 이럴 때 가장 간단하고 효율적인 방법은 타입 배열(Typed Array)인 Uint8Array를 사용하는 것입니다.
Uint8Array를 사용한 방법
Uint8Array는 생성 시 크기를 지정하면 해당 길이만큼의 배열을 자동으로 0으로 채워 생성해 줍니다. 다음 예제 코드를 직접 실행해 보세요.
<html>
<body>
<script>
var arr1 = ["marketing", "technical", "finance", "sales"];
var arr2 = new Uint8Array(4);
document.write(arr1);
document.write("<br>Zero filled array: " + arr2);
</script>
</body>
</html>실행 결과
marketing,technical,finance,sales Zero filled array: 0,0,0,0
다른 방법: fill() 메서드 활용
일반 배열을 사용하고 싶다면 Array.prototype.fill() 메서드를 활용할 수도 있습니다.
const arr = new Array(4).fill(0); console.log(arr); // [0, 0, 0, 0]
두 방법의 차이점
- Uint8Array: 0~255 범위의 정수만 저장 가능하며, 메모리 효율이 뛰어나고 숫자 연산에 최적화되어 있습니다.
- fill() 메서드: 일반 배열이므로 어떤 값이든 저장할 수 있어 더 유연하게 사용할 수 있습니다.
용도에 따라 적합한 방법을 선택하면 됩니다. 단순히 숫자 데이터를 다루는 경우에는 Uint8Array가 성능 면에서 유리합니다.