This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The size accessor property of Map instances returns the number of elements in this map.
const map = new Map();
map.set("a", "alpha");
map.set("b", "beta");
map.set("g", "gamma");
console.log(map.size);
// Expected output: 3
The value of size is an integer representing how many entries the Map object has. A set accessor function for size is undefined; you can not change this property.
const myMap = new Map();
myMap.set("a", "alpha");
myMap.set("b", "beta");
myMap.set("g", "gamma");
console.log(myMap.size); // 3
| Desktop | Mobile | Server | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
size |
38 | 12 | 19From Firefox 13 to Firefox 18, thesize property was implemented as a Map.prototype.size() method, this has been changed to a property in later versions conform to the ECMAScript 2015 specification. |
25 | 8 | 38 | 19From Firefox for Android 14 to Firefox for Android 18, thesize property was implemented as a Map.prototype.size() method, this has been changed to a property in later versions conform to the ECMAScript 2015 specification. |
25 | 8 | 3.0 | 38 | 8 | 1.0.0 | 1.0 | 0.12.0 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/size