Array.from

KHW·2021년 7월 1일
0

Javascript 지식쌓기

목록 보기
50/95

Array.from

유사 배열 객체(array-like object)나 반복 가능한 객체(iterable object)를 얕게 복사해 새로운Array 객체를 만든다.

매개변수

1) Array.from(매개변수1)

ex) 매개변수가 문자열 일 때
Array.from('soju') => [ 's', 'o', 'j', 'u' ]
"soju".split("") => [ 's', 'o', 'j', 'u' ]

  • split과 같은 결과이다.

ex) 매개변수가 배열 일 때
Array.from([1,2,3]) => [1,2,3]

  • 아무 일 없다.

2) Array.from(매개변수1, 매개변수2)

ex) 매개변수1이 배열이고 매개변수2가 함수일때

console.log(Array.from([1, 2, 3], () => Array(2).fill(null)));
console.log(Array.from(Array(3), () => Array(2).fill(null)));

[ [ null, null ], [ null, null ], [ null, null ] ]
[ [ null, null ], [ null, null ], [ null, null ] ]

  • 둘다 결과는 같다. 그 이유는 매개변수1에 있던 배열에서 각각의 3개의 배열 값에 대해 적용되기 때문에 해당하는 1에 대해 매개변수2에서 return한 배열 [null,null]이 적용되고 이것이 2, 3에 대해서도 적용된다.

ex) 원하는 행 열을 가진 2차원 배열 만들기

let rows = 3;
let columns = 4;

const RealArr = Array.from(Array(rows), () => {
  return Array(columns).fill(null);
});

console.log(RealArr);

각각의 rows(행)에 대해 배열을 적용시켜 null을 각각 넣는다.
즉, 2차원 배열이란 뜻이다.

profile
나의 하루를 가능한 기억하고 즐기고 후회하지말자

0개의 댓글