Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Selected Reading
Convert object to a Map - JavaScript
In JavaScript, you can convert an object to a Map using several approaches. Maps offer better performance for frequent additions and deletions compared to objects.
Sample Object
Let's start with this example object:
const obj = {
name: "Vikas",
age: 45,
occupation: "Frontend Developer",
address: "Tilak Nagar, New Delhi",
experience: 23,
salary: "98000"
};
Method 1: Using Object.entries() (Recommended)
The most concise approach uses Object.entries() which returns key-value pairs as arrays:
const obj = {
name: "Vikas",
age: 45,
occupation: "Frontend Developer",
address: "Tilak Nagar, New Delhi",
experience: 23,
salary: "98000"
};
const objectToMap = (obj) => {
return new Map(Object.entries(obj));
};
console.log(objectToMap(obj));
Map(6) {
'name' => 'Vikas',
'age' => 45,
'occupation' => 'Frontend Developer',
'address' => 'Tilak Nagar, New Delhi',
'experience' => 23,
'salary' => '98000'
}
Method 2: Using Object.keys() and Loop
This approach manually iterates through object keys:
const objectToMapLoop = (obj) => {
const keys = Object.keys(obj);
const map = new Map();
for (let i = 0; i
Map(6) {
'name' => 'Vikas',
'age' => 45,
'occupation' => 'Frontend Developer',
'address' => 'Tilak Nagar, New Delhi',
'experience' => 23,
'salary' => '98000'
}
Method 3: Using for...in Loop
Alternative approach using for...in to iterate through object properties:
const objectToMapForIn = (obj) => {
const map = new Map();
for (const key in obj) {
if (obj.hasOwnProperty(key)) {
map.set(key, obj[key]);
}
}
return map;
};
console.log(objectToMapForIn(obj));
Map(6) {
'name' => 'Vikas',
'age' => 45,
'occupation' => 'Frontend Developer',
'address' => 'Tilak Nagar, New Delhi',
'experience' => 23,
'salary' => '98000'
}
Comparison
| Method | Code Length | Performance | Readability |
|---|---|---|---|
Object.entries() |
Shortest | Fast | Excellent |
Object.keys() + loop |
Medium | Good | Good |
for...in loop |
Longest | Good | Fair |
Key Differences: Object vs Map
const map = new Map(Object.entries(obj));
console.log("Map size:", map.size);
console.log("Has 'name' key:", map.has('name'));
console.log("Get 'age' value:", map.get('age'));
// Maps preserve insertion order
for (const [key, value] of map) {
console.log(`${key}: ${value}`);
}
Map size: 6 Has 'name' key: true Get 'age' value: 45 name: Vikas age: 45 occupation: Frontend Developer address: Tilak Nagar, New Delhi experience: 23 salary: 98000
Conclusion
Use new Map(Object.entries(obj)) for the most concise object-to-Map conversion. Maps provide better performance for frequent key operations and guarantee insertion order preservation.
Advertisements
