Array.from
은 JavaScript에서 배열을 생성하거나 유사 배열 객체(array-like object)나 반복 가능한 객체(iterable object)를 새로운 배열로 변환할 때 사용하는 메서드입니다.
Array.from의 사용법은 다음과 같습니다:
Array.from(arrayLike[, mapFn[, thisArg]])
arrayLike
: 배열로 변환할 유사 배열 객체나 반복 가능한 객체입니다.mapFn
(optional): 배열의 모든 요소에 대해 호출할 맵핑 함수입니다.thisArg
(optional): mapFn
에 전달할 this
값입니다. (일반적으로 사용되지 않습니다)내부 동작:
arrayLike
또는 반복 가능한 객체를 가져옵니다.mapFn
이 제공된 경우, 본래 객체의 각 요소에 대해 mapFn
을 호출하고 결과를 새 배열에 삽입합니다. 그렇지 않으면 본래 객체의 요소를 새 배열에 복사합니다.다양한 코드 예제:
const newArray = Array.from({length: 5}, (v, i) => i * 2);
console.log(newArray); // [0, 2, 4, 6, 8]
const arrayLike = {
0: 'a',
1: 'b',
2: 'c',
length: 3
};
const newArray = Array.from(arrayLike);
console.log(newArray); // ['a', 'b', 'c']
const str = 'hello';
const newArray = Array.from(str);
console.log(newArray); // ['h', 'e', 'l', 'l', 'o']
const mySet = new Set([1, 2, 3, 4]);
const newArray = Array.from(mySet);
console.log(newArray); // [1, 2, 3, 4]
const arrayLike = {
0: 1,
1: 2,
2: 3,
length: 3
};
const newArray = Array.from(arrayLike, (value) => value * 2);
console.log(newArray); // [2, 4, 6]
위의 예시들을 통해 여러 상황에서 Array.from
의 사용법과 그 내부 동작에 대해 이해하실 수 있기를 바랍니다.