본문 바로가기
🐔JavaScript

Array.from( )

by egg.silver 2023. 8. 24.

Array.from( ) 메소드의 역할 : 유사 배열 객체나 반복 가능한 객체를 얕게 복사하여 새로운 Array 객체를 만든다.

 

 

기본 형식

Array.from(arrayLike, [mapFn[, thisArg]]) 
//arrayLike : (length 속성이 있는 객체로 생각하면 쉬움) 배열로 변환하고자 하는 유사 배열 객체나 반복 가능 객체
//mapFn : 배열의 모든 요소에 대해 호출
//thisArg : mapFn 실행 시에 this로 사용할 값
let result = Array.from([1, 2, 3], function(amount) {
    return this.base + amount;
}, { base: 10 });
console.log(result);  // [11, 12, 13]

 

예제

 

(1) string에서 배열 만들기

Array.from("jieun")
//['j', 'i', 'e', 'u', 'n']

 

(2) 배열 형태를 가진 객체에서 배열 만들기

function f() {
  return Array.from(arguments);
}

f(1, 2, 3);

// [1, 2, 3]

(3) Array.from과 화살표 함수

Array.from([1, 2, 3], (x) => x + x);
// [2, 4, 6]
Array.from({ length: 5 }, (v, i) => i);
// [0, 1, 2, 3, 4]

//이 때 { length:5 }라는 건 배열과 유사한 객체로, "5개의 빈 요소를 가진 것"처럼 행동
//따하서 map함수가 실행되면서 각 자리에 인덱스가 들어가게 되면서 해당 값 반환