JavaScript - Map의 key를 배열로 변환

Map의 모든 key들을 배열로 변환하는 방법을 소개합니다.

1. Array.from()으로 key를 배열로 변환

Map.keys()는 Map의 모든 key들에 대한 Iterator를 리턴합니다.

Array.from(iterator)을 이용하여 Iterator 객체를 배열로 변환할 수 있습니다.

let myMap = new Map([
  ['c', 2],
  ['a', 4],
  ['d', 1],
  ['b', 3],
]);

console.log(myMap.keys());

let arr = Array.from(myMap.keys());
console.log(arr);

Output:

[Map Iterator] { 'c', 'a', 'd', 'b' }
[ 'c', 'a', 'd', 'b' ]

2. Spread operator를 이용하여 key를 배열로 변환

아래와 같이 Spread operator(...)를 이용하여 iterator로 참조 가능한 모든 요소들을 배열로 변환할 수 있습니다.

let myMap = new Map([
  ['c', 2],
  ['a', 4],
  ['d', 1],
  ['b', 3],
]);

let arr = [...myMap.keys()];
console.log(arr);

Output:

[ 'c', 'a', 'd', 'b' ]
Loading script...
codechachaCopyright ©2019 codechacha