Javascript-1d or 2d array 간단히 만들기

Javascript-1d or 2d array 간단히 만들기

js에서 for문을 돌리지 않고 배열을 만들고 싶어서 찾아보던 중 간단하고 멋진 스택들을 찾아냈습니다.

1. new Array를 사용하는 경우

const arr1d = new Array(2).fill(0); // [0, 0] const arr2d = new Array(2).fill(null).map(() => new Array(3).fill(0)); // [[0, 0, 0], // [0, 0, 0]]

new Array를 이용해 length값을 주어서 배열을 만드는 스택입니다.

.fill은 하지 않아도 되지만, fill을 사용하지 않으면 배열의 값이 아무것도 들어있지 않아서 forEach 등의 메서드가 아예 먹히지 않을 수 있습니다.

따라서 null이나 0등의 값으로 초기화 할 것을 추천드립니다.

2. Array.from 을 사용하는 경우

const arr1d = Array.from(Array(2).fill(0)); // [0, 0] const arr2d = Array.from(Array(2), () => Array(3).fill(0)); // [[0, 0, 0], // [0, 0, 0]]

1번의 경우보다 약 12% 효율적이라고 합니다.

또한 코드 길이 또한 짧아서 사용성이 좋아보입니다.

from http://developerlee.tistory.com/43 by ccl(A) rewrite - 2021-12-03 20:01:54