Array.from

agnusdei·2023년 7월 22일
0

Array.from은 JavaScript에서 배열을 생성하거나 유사 배열 객체(array-like object)나 반복 가능한 객체(iterable object)를 새로운 배열로 변환할 때 사용하는 메서드입니다.

Array.from의 사용법은 다음과 같습니다:

Array.from(arrayLike[, mapFn[, thisArg]])
  • arrayLike: 배열로 변환할 유사 배열 객체나 반복 가능한 객체입니다.
  • mapFn(optional): 배열의 모든 요소에 대해 호출할 맵핑 함수입니다.
  • thisArg(optional): mapFn에 전달할 this값입니다. (일반적으로 사용되지 않습니다)

내부 동작:

  1. arrayLike 또는 반복 가능한 객체를 가져옵니다.
  2. mapFn이 제공된 경우, 본래 객체의 각 요소에 대해 mapFn을 호출하고 결과를 새 배열에 삽입합니다. 그렇지 않으면 본래 객체의 요소를 새 배열에 복사합니다.
  3. 새로 생성된 배열을 반환합니다.

다양한 코드 예제:

  1. Array.from을 사용하여 배열 생성하기:
const newArray = Array.from({length: 5}, (v, i) => i * 2);
console.log(newArray); // [0, 2, 4, 6, 8]
  1. 유사 배열 객체를 배열로 변환하기:
const arrayLike = {
    0: 'a',
    1: 'b',
    2: 'c',
    length: 3
};
const newArray = Array.from(arrayLike);
console.log(newArray); // ['a', 'b', 'c']
  1. 문자열 문자를 배열로 변환하기:
const str = 'hello';
const newArray = Array.from(str);
console.log(newArray); // ['h', 'e', 'l', 'l', 'o']
  1. Set을 배열로 변환하기:
const mySet = new Set([1, 2, 3, 4]);
const newArray = Array.from(mySet);
console.log(newArray); // [1, 2, 3, 4]
  1. 유사 배열 객체를 배열로 변환하고 맵핑 함수 적용하기:
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의 사용법과 그 내부 동작에 대해 이해하실 수 있기를 바랍니다.

0개의 댓글