웹_프론트엔드/JavaScript
[JS] 연속된 정수 배열을 만드는 다양한 방법
young
2023. 7. 14. 13:04
반응형
기본적인 사용자 지정 함수
function getNumberArray (N) {
let a = Array(N), b = 0;
while(b < N) a[b++] = b;
return a;
}
getNumberArray(10);
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
ES6+ API을 활용한 1줄 짜리 방법들 - 0으로 시작하는 기본 수열
Array.from(Array(10).keys())
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[...Array(10).keys()]
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Array.apply(null, {length: 10}).map(Number.call, Number)
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
ES6+ API을 활용한 1줄 짜리 방법들 - 화살표 함수를 이용한 등차 또는 등비수열
Array.from({length: 10}, (_, i) => i + 1)
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[ ...Array(10).keys()].map( i => i + 1);
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Array(10).fill().map((_, i) => i + 1);
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Array(endNumber - startNumber + 1)
.fill(0)
.map((_, id) => startNumber + id)
// startNumber부터 endNumber까지의 배열
Array.from(Array(10), (_, i) => i + 1)
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
속도 차이
https://jsbench.me/zskijebb24/1
JSBench.me - JavaScript performance benchmarking playground
jsbench.me
반응형