본문 바로가기
Dev/Nodejs

[Node.js] Array.from()

by Ellen571 2024. 9. 13.
반응형

 

 

Array.from()

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

 

유사 배열 객체

배열처럼 보이지만 사실 key가 숫자이고 length 값을 가지고 있는 객체{}

 

얕은 복사

1depth까지만 완전히 복사

 

Array.from("foo");
// [ "f", "o", "o" ]

const set = new Set(["foo", "bar", "baz", "foo"]);
Array.from(set);
// [ "foo", "bar", "baz" ]

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개짜리 배열을 만든다.
  • 두번째 인자 (v, i) => i: v: value, i는 index를 의미하며, 배열의 index를 반환한다.
Array.from({ length: 5 }, (v, i) => {
  console.log("value: " + v + ", " + "index: " + i);
});

/*
value: undefined, index: 0
value: undefined, index: 1
value: undefined, index: 2
value: undefined, index: 3
value: undefined, index: 4
*/

 

 

{ length: 5 } 는 뭘까?

let fakeArray = {length:5};
fakeArray.length //5
let realArray = [1,2,3,4,5];
realArray.length //5
  • 5개 요소가 있는 배열로 인식하는 유사 배열이다.

 

 

참고

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/from

 

Array.from() - JavaScript | MDN

Array.from() 정적 메서드는 순회 가능 또는 유사 배열 객체에서 얕게 복사된 새로운 Array 인스턴스를 생성합니다.

developer.mozilla.org

 

 

반응형

'Dev > Nodejs' 카테고리의 다른 글

[Node.js] process.env.PORT  (0) 2024.09.10
[Nodejs] API  (0) 2020.08.05
[Nodejs] 보안 - path.parse(), sanitize-html  (0) 2020.08.05
[Nodejs] Module  (0) 2020.08.04
[Nodejs] 객체지향 프로그래밍  (0) 2020.08.04