OK, vamos ser um pouco mais abrangentes e começar com o que é o mapa para quem não conhece esse recurso em JavaScript ... MDN diz:
O objeto Map contém pares de valores-chave e lembra a ordem de inserção original das chaves.
Qualquer valor (objetos e valores primitivos) pode ser usado como uma chave ou um valor.
Como você mencionou, você pode criar facilmente uma instância do Map usando a nova palavra-chave ... No seu caso:
let myMap = new Map().set('a', 1).set('b', 2);
Então vamos ver ...
A maneira como você mencionou é uma boa maneira de fazer isso, mas sim, existem maneiras mais concisas de fazer isso ...
O mapa tem muitos métodos que você pode usar, como os set()
que você já usou para atribuir os valores-chave ...
Uma delas é keys()
que retorna todas as chaves ...
No seu caso, ele retornará:
MapIterator {"a", "b"}
e você os converte facilmente em uma matriz usando maneiras ES6 , como operador de propagação ...
const b = [...myMap.keys()];
Array.from(Map.keys())
.