[JS] 특정 범위 배열 생성 효율

choi seung-i·2024년 8월 30일
0

공부로그

목록 보기
25/25

특정 범위, 즉 요소의 개수가 정해진 배열에 내용을 채워넣는 것을 할 때에는
배열을 먼저 생성하여 메모리 할당을 한번만 하고, 배열의 크기가 고정된 상태에서 추가 작업을 진행하는것이 효율적일 수 있다.

적은 데이터면 큰 차이는 없겠지만 배열의 길이가 커질수록 차이는 보일테니 앞으로는 최대한 적용할 수 있도록!!

예를들면

start ~ end 의 값을 배열에 담고싶다.

let start = 3, end = 10;
Array.from({length: (end - start) + 1}, () => start++);

-> 배열을 만들고, 두번째 인수로 전달된 함수로 순서대로 값을 초기화 하는데 start++를 함으로 현재 요소는 start로 반환하고, start값을 증가시켜주어 다음번 불려지는 초기화 함수는 start + 1이 반환되며 반복작업이 이루어지는것이다.

++

아래처럼 for문을 사용하여서 하게되면 배열의 크기를 동적으로 증가시키며, 배열이 커질수록 메모리 할당이 반복적으로 이루어지게 된다. 또한 push 메서드를 여러 번 호출하기 때문에 위의 코드보다 실행 효율이 떨어질 수 있다.

const arr = [];
for(let i = start; i <= end; i++) {
  arr.push(i);
}

같은 동작을 하더라도, js문법을 알고 쓴다면 작은 차이가 큰 차이로 이어질 수 있음을 생각하자!


공부하며 정리&기록하는 ._. 씅로그

profile
Front-end

0개의 댓글