マップキーを配列に変換するにはどうすればいいですか? 質問する

マップキーを配列に変換するにはどうすればいいですか? 質問する

次のようなマップがあるとします。

let myMap = new Map().set('a', 1).set('b', 2);

['a', 'b']そして、私は上記に基づいて取得したいと考えています。私の現在の解決策は非常に長くてひどいようです。

let myMap = new Map().set('a', 1).set('b', 2);
let keys = [];
for (let key of myMap)
  keys.push(key);
console.log(keys);

もっと良い方法があるはずですよね?

ベストアンサー1

Map.keys()を使っMapIteratorて変換できるオブジェクトを返しますArrayArray.from:

let keys = Array.from( myMap.keys() );
// ["a", "b"]

編集:反復可能なオブジェクトを配列に変換することもできます。スプレッド構文

let keys =[ ...myMap.keys() ];
// ["a", "b"]

おすすめ記事