This site is mobile accessible. Press the "Tap Here" button to use a different font-size.
Smartphone icons created by Freepik - Flaticon
7.1 JS Sets
- A Map holds key-value pairs where the keys can be any datatype.
- A Map remembers the original insertion order of the keys.
Essential Map Methods
Method |
Description |
new Map() |
Creates a new Map |
set() |
Sets the value for a key in a Map |
get() |
Gets the value for a key in a Map |
delete() |
Removes a Map element specified by the key |
has() |
Returns true if a key exists in a Map |
forEach() |
Calls a function for each key/value pair in a Map |
entries() |
Returns an iterator with the [key, value] pairs in a Map |
Property |
Description |
size |
Returns the number of elements in a Map |
How to Create a Map
You can create a JavaScript Map by:
- Passing an Array to new Map()
- Create a Map and use Map.set()
The new Map() Method
You can create a Map by passing an Array to the new Map() constructor:
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
The set() Method
You can add elements to a Map with the set() method:
// Create a Map
const fruits = new Map();
// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
The set() method can also be used to change existing Map values:
fruits.set("apples", 200);
The get() Method
The get() method gets the value of a key in a Map:
fruits.get("apples"); // Returns 500
The size Property
The size property returns the number of elements in a Map:
fruits.size;
The delete() Method
The delete() method removes a Map element:
fruits.delete("apples");
The has() Method
The has() method returns true if a key exists in a Map:
fruits.has("apples");
fruits.delete("apples");
fruits.has("apples");
JavaScript Objects vs Maps
Differences between JavaScript Objects and Maps:
|
Object |
Map |
Iterable |
Not directly iterable |
Directly iterable |
Size |
Do not have a size property |
Have a size property |
Key Types |
Keys must be Strings (or Symbols) |
Keys can be any datatype |
Key Order |
Keys are not well ordered |
Keys are ordered by insertion |
Defaults |
Have default keys |
Do not have default keys |
The forEach() Method
The forEach() method calls a function for each key/value pair in a Map:
// List all entries
let text = "";
fruits.forEach (function(value, key) {
text += key + ' = ' + value;
})
The entries() Method
The entries() method returns an iterator object with the [key, values] in a Map:
// List all entries
let text = "";
for (const x of fruits.entries()) {
text += x;
}
JavaScript icons used in the buttons provided by ICONS8.COM. Smartphone icons created by Freepik - Flaticon
Example files created in this module:
JS Sets Map Objects part 1
JS Sets Map Objects part 2
JS Sets Map Objects part 3
JS Sets Map Objects part 4
JS Sets Map Objects part 5
JS Sets Delete Map Objects
JS Sets Map.has() part 1
JS Sets Map.has() part 2
JS Sets Map Objects forEach()
JS Sets Map Objects Map.entries()
JS Map Objects
JS Map Objects - Map.set() part 1
JS Map Objects - Map.set() part 2
JS Map Objects Map.get()
JS Map Objects - Map.size
JS Map Objects - Map.delete()
JS Map Objects - Map.has() part 1
JS Map Objects - Map.has() part 2
JS Map Objects - Map.forEach()
JS Map Objects - Map.entries()
JS typeof Operator part 1
JS typeof Operator part 2
JS typeof Operator part 3
JS typeof Properties - constructor Property part 1
JS typeof Properties - constructor Property part 2
JS typeof Properties - Array Object
JS typeof Operator - Date Object
JS typeof Operator - Date Function
JS typeof Operator - undefined part 1
JS typeof Operator - undefined part 2
JS typeof Operator - empty values
JS typeof Operator - null
JS typeof Operator - undefined Data Type
JS instanceof Operator
JS void Operator
JS Operators - typeof Operator
JS Properties - constructor Property
JS Arrays - isArray() function part 1
JS Arrays - isArray() function part 2
JS Date Object - isDate() function part 1
JS Date Object - isDate() function part 2
JS Converting Numbers to Strings part 1
JS Converting Numbers to Strings part 2
JS typeof Operator part 1
JS typeof Operator part 2
JS Bitwise AND
JS Bitwise OR
JS Bitwise XOR
JS Bitwise NOT
JS Bitwise Left
JS Bitwise Right
JS Unsigned Bitwise Right
JS Convert Decimal to Binary
JS Convert Binary to Decimal
JS String Methods
JS Regular Expressions part 1
JS String Methods - String replace()
JS Regular Expressions part 2
JS Regular Expressions part 3
JS Error Handling part 1
JS try catch
JS Errors - RangeError
JS Errors - ReferenceError
JS Errors - SyntaxError
JS Errors - TypeError
JS Errors - URIError
JS Scope - Local Variables
JS Scope - GLOBAL Variable
JS Global Variables
JS Scope - Global HTML variables
JS Hoisted Declarations part 1
JS Hoisted Declarations part 2
JS Hoisting part 1
JS Hoisting part 2
JS Initializations are Not Hoisted part 1
JS Initializations are Not Hoisted part 2
JS Initializations are Not Hoisted part 3
JS "use strict" Mode part 1
JS "use strict" Mode part 2
JS this Keyword
JS this Keyword [object Window] part 1
JS this Keyword - window object
JS this Keyword [object Window] part 2
JS this Keyword - Function
JS this Keyword - Event Handler
JS this Keyword - Event Handler
JS this Keyword - person object part 1
JS this Keyword - person object part 2
JS this Keyword - Explicit Function Binding
JS this Keyword - Function bind()
JS this Keyword - Arrow Function part 1
JS this Keyword - Arrow Function part 2