Javascript Map Object
Javascript Map Object
A Map is a built in object that holds key-value pairs. It can hold a key of any data type unlike in plain objects. It maintains the insertion order and provides helpers to manage key-value pairs.
Creating a Map
Creates an empty Map
instance.
const map = new Map()
Initializing a Map
You can initialize a Map with an array of key-value pairs.
const map = new Map([
['id', 1], // key: 'id', value: 1
['name', 'Alice'], // key: 'name', value: 'Alice'
])
Map Size
size
property returns the number of key-value pairs in a map. It returns a number.
map.size // 2
Map Set
The set(key, value)
method adds a key-value pair. If a key exists already, the value will be updated. set()
affects the size of a map.
map.set('age', 50) // sets new key 'age' with value 50
map.set(2, 200) // sets new key 2 with value 200
map.set('id', 2) // id key already exists, so value of id will be updated to 2
// Check size
map.size // 4
You can also chain set
like map.set(key, value).set(key, value)
Map Get
The get(key)
retrieves the value of the specified key. If a key exists, its value will be returned otherwise undefined.
map.get('age') // 50
map.get('none') // undefined as key 'none' do not exist
Map Has
The has(key)
returns a boolean by checking the key existence.
map.has('id') // true
map.has('none') // false
Map Delete
The delete(key)
method removes the key-value pair with the specified key. It returns true if the key exists, otherwise false. delete()
affects the size of a map.
map.delete('age') // true as key 'age' exists
map.delete('none') // false as key 'none' do not exist
// Check size
map.size // 3
Map Clear
The clear
method removes all key-value pairs from the map. clear
affects the size of a map.
map.clear()
// Check size
map.size // 0
Iterate Map using for … of
You can directly iterate using for ... of
over each key-value pair.
const map = new Map()
map.set('name', 'Bob').set('age', 20)
for (const [key, value] of map) {
console.log(`${key}: ${value}`)
}
// name: Bob
// age: 20
Iterate Map using keys()
You can iterate over the map keys using keys()
method as in the order it was inserted.
const map = new Map()
map.set('name', 'Bob').set('age', 20)
for (const key of map.keys()) {
console.log(`${key}`)
}
// name
// age
Iterate Map using values()
You can iterate over the map values using values()
method as in the order it was inserted.
const map = new Map()
map.set('name', 'Bob').set('age', 20)
for (const key of map.values()) {
console.log(`${key}`)
}
// Bob
// 20
Iterate Map using entries()
You can iterate over the map’s key-value pair using entries()
method as in the order it was inserted.
const map = new Map()
map.set('name', 'Bob').set('age', 20)
for (let [key, value] of map.entries()) {
console.log(`${key}: ${value}`)
}
// name: Bob
// age: 20