How to convert a Map's keys to an array in JavaScript?
There are different ways to convert map keys to arrays in JavaScript. You can use the map keys() method to access the keys in the map and then apply the Arrayform() method to create an array of the accessed keys. You can also apply the spread operator instead of the Array form() method to create an array of keys.
Given you a javascript Map, the task is to convert the keys of the Map into an array. Here is the example given below
Given map -
{ 1: "India", 2: "Russia", 3: "USA", 4: "Japan", 5: "UK" };
Result array -
[1, 2, 3, 4, 5]
There are multiple ways to achieve this. Some of them are -
Use Array.form and Map.keys() methods
Use the Spread operator and the Map.keys() method
Use for..of loop
Use Array.form() and Map.keys() methods
The Array.from() method returns an array from any iterable object. The Map.keys method is used to return all the keys of the Map in an iterable form. To convert map keys to array we follow the following steps.
Use the Map.keys() method to get all Map keys. It returns a MapIterator object containing the Map keys
Use Array.from() to extract Map keys from MapIterator. It returns an array containing all Map keys.
Example
In this example, we have a Map whose keys are numbers and values are country names. We use Array.from method to extract all keys (numbers) from Map.
<html> <head> <title>Example- convert Map keys to an array in JavaScript</title> </head> <body> <h2 id="Convert-Map-keys-to-an-array-using-Array-from-method">Convert Map keys to an array using Array.from method</h2> <p>Click the following button to get the Keys from the map</p> <button id="btn" onclick="convert( )" > Click Here </button> <br> <p id="result"> </p> <script> function convert( ){ let result = document.getElementById("result") let mp = new Map( ); mp.set(1, "India"); mp.set(2, "Russia"); mp.set(3, "USA"); mp.set(4, "Japan"); mp.set(5, "UK"); let keys; keys = Array.from( mp.keys( ) ); result.innerText = "Converted Array : [ " + keys + " ]"; } </script> </body> </html>
Use Spread operator and Map.keys() method
JavaScript spread operator allows us to extend an array into individual array elements. The Map.keys method is used to return all the keys of the Map in an iterable form. To convert map keys to array we follow the following steps.
Use the Map.keys() method to get all Map keys. It returns a MapIterator object containing the Map keys
Use the Spread operator to extract Map keys from a MapIterator. It returns an array containing all Map keys.
Example
In this example, we have a Map whose keys are numbers and values are country names. We use Spread Operator to extract all keys (numbers) from Map.
<html> <head> <title>Example- convert Map keys to an array in JavaScript</title> </head> <body> <h2 id="Convert-Map-keys-to-an-array-using-Spread-Operator">Convert Map keys to an array using Spread Operator</h2> <p>Click the following button to get the Keys from the map</p> <button id="btn" onclick="convert( )" > Click Here </button><br> <p id="result"> </p> <script> function convert(){ let result = document.getElementById("result") let mp = new Map(); mp.set(1, "India"); mp.set(2, "Russia"); mp.set(3, "USA"); mp.set(4, "Japan"); mp.set(5, "UK"); let keys; keys = [ ...mp.keys() ]; result.innerText = "Converted Array : [ " + keys + " ]"; } </script> </body> </html>
Use for...of loop
for…of statement loops through the values of an iterable object. The Map.keys method is used to return all the keys of a Map in an iterable form. To convert map keys to array we follow the steps below
Create an empty array to store the key.
Use a for..of loop to iterate over all Map keys obtained from the Map.keys() method.
Push the key into the empty array on each iteration.
Example
<html> <head> <title>Example -convert Map keys to an array in JavaScript</title> </head> <body> <h2 id="Convert-Map-keys-to-an-array-using-for-of-loop">Convert Map keys to an array using for...of loop</h2> <p>Click the following button to get the Keys from the map</p> <button id="btn" onclick="convert( )" > Click Here </button> <br> <p id="result"> </p> <script> function convert(){ let result = document.getElementById("result") let mp = new Map(); mp.set(1, "India"); mp.set(2, "Russia"); mp.set(3, "USA"); mp.set(4, "Japan"); mp.set(5, "UK"); let keys = []; for(let key of mp.keys()){ keys.push(key) } result.innerText = "Converted Array : [ " + keys + " ]"; } </script> </body> </html>
The above is the detailed content of How to convert a Map's keys to an array in JavaScript?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Frequently Asked Questions and Solutions for Front-end Thermal Paper Ticket Printing In Front-end Development, Ticket Printing is a common requirement. However, many developers are implementing...

There is no absolute salary for Python and JavaScript developers, depending on skills and industry needs. 1. Python may be paid more in data science and machine learning. 2. JavaScript has great demand in front-end and full-stack development, and its salary is also considerable. 3. Influencing factors include experience, geographical location, company size and specific skills.

JavaScript is the cornerstone of modern web development, and its main functions include event-driven programming, dynamic content generation and asynchronous programming. 1) Event-driven programming allows web pages to change dynamically according to user operations. 2) Dynamic content generation allows page content to be adjusted according to conditions. 3) Asynchronous programming ensures that the user interface is not blocked. JavaScript is widely used in web interaction, single-page application and server-side development, greatly improving the flexibility of user experience and cross-platform development.

How to merge array elements with the same ID into one object in JavaScript? When processing data, we often encounter the need to have the same ID...

In-depth discussion of the root causes of the difference in console.log output. This article will analyze the differences in the output results of console.log function in a piece of code and explain the reasons behind it. �...

Discussion on the realization of parallax scrolling and element animation effects in this article will explore how to achieve similar to Shiseido official website (https://www.shiseido.co.jp/sb/wonderland/)...

Explore the implementation of panel drag and drop adjustment function similar to VSCode in the front-end. In front-end development, how to implement VSCode similar to VSCode...

Learning JavaScript is not difficult, but it is challenging. 1) Understand basic concepts such as variables, data types, functions, etc. 2) Master asynchronous programming and implement it through event loops. 3) Use DOM operations and Promise to handle asynchronous requests. 4) Avoid common mistakes and use debugging techniques. 5) Optimize performance and follow best practices.
