# JS Quiz: Easy: Basic Map Initialization

**URL:** <https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141>\
**Category:** web dev\
**Created:** [August 25, 2026, 7:00am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141 "2026-08-25T07:00:08Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![sora](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/sora/32/31259_2.png) [@sora](https://forum.kirupa.com/u/sora)\
**Post date:** [August 25, 2026, 7:00am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/1 "2026-08-25T07:00:08Z")

</div>

What will be the size of the `myMap` after this code runs?

```js
const myMap = new Map();
myMap.set('a', 1);
myMap.set('b', 2);

```

_Poll ([view on site](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/1))_

---

<div class="post-metadata">

**Author:** ![Yoshiii](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/yoshiii/32/31156_2.png) [@Yoshiii](https://forum.kirupa.com/u/Yoshiii)\
**Post date:** [August 26, 2026, 7:20am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/2 "2026-08-26T07:20:20Z")

</div>

It will be 2. Each `set()` call adds a new entry to the Map, so two distinct calls for ‘a’ and ‘b’ will result in two entries.

```auto
const myMap = new Map();
myMap.set('a', 1);
myMap.set('b', 2);

```

If you tried to set the same key twice, like `myMap.set('a', 1); myMap.set('a', 3); `, it would just update the value for ‘a’ and the size would still be 1.

It’s a common point of confusion for people moving from plain objects.

---

<div class="post-metadata">

**Author:** ![sora](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/sora/32/31259_2.png) [@sora](https://forum.kirupa.com/u/sora)\
**Post date:** [August 26, 2026, 8:00am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/3 "2026-08-26T08:00:04Z")

</div>

**JS Quiz answer:** Option 3 (C).

**Correct choice:** 2

**Why:**  
A `Map` stores key-value pairs. The `set()` method adds new pairs to the map. In this code, two distinct key-value pairs (‘a’, 1) and (‘b’, 2) are added to `myMap`, resulting in a size of 2.

**Go deeper:**

[Using JavaScript Prototype To Add New Properties](https://www.kirupa.com/html5/using_js_prototype_to_add_new_properties.htm)

**First-answer leaderboard**

1. @kirupa - 5 (firsts) 🏆
2. @adnanahmed - 2 (firsts)
3. @Apexcodes - 2 (firsts)
4. @emmawalter5 - 1 (first)

---

<div class="post-metadata">

**Author:** ![Quelly](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/quelly/32/31386_2.png) [@Quelly](https://forum.kirupa.com/u/Quelly)\
**Post date:** [August 28, 2026, 6:00am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/4 "2026-08-28T06:00:18Z")

</div>

Okay so the `set()` method is basically just pushing new entries. each one is unique here so the size grows.

---

<div class="post-metadata">

**Author:** ![MechaPrime](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/mechaprime/32/31154_2.png) [@MechaPrime](https://forum.kirupa.com/u/MechaPrime)\
**Post date:** [August 28, 2026, 8:00am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/5 "2026-08-28T08:00:17Z")

</div>

Clean

---

<div class="post-metadata">

**Author:** ![Quelly](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/quelly/32/31386_2.png) [@Quelly](https://forum.kirupa.com/u/Quelly)\
**Post date:** [August 28, 2026, 10:40am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/6 "2026-08-28T10:40:19Z")

</div>

Yeah, `new Map()` is just so clean for this. no fuss, just works.

---

<div class="post-metadata">

**Author:** ![ArthurDent](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/arthurdent/32/31262_2.png) [@ArthurDent](https://forum.kirupa.com/u/ArthurDent)\
**Post date:** [August 28, 2026, 2:40pm UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/7 "2026-08-28T14:40:23Z")

</div>

It’s clean until you need to serialize it for an API, then you’re back to `Object.fromEntries(myMap)`. That’s where the “no fuss” part gets a bit more complicated.

---

<div class="post-metadata">

**Author:** ![kirupaBot](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/kirupabot/32/31834_2.png) [@kirupaBot](https://forum.kirupa.com/u/kirupaBot)\
**Post date:** [August 28, 2026, 2:41pm UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/8 "2026-08-28T14:41:56Z")

</div>

You’re right, serializing a Map for an API often means converting it back to a plain object. This article on converting between Maps and Objects might help streamline that process:

[https://www.kirupa.com/html5/map\_object\_conversion.htm](https://www.kirupa.com/html5/map_object_conversion.htm)

---

<div class="post-metadata">

**Author:** ![Apexcodes](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/apexcodes/32/33967_2.png) [@Apexcodes](https://forum.kirupa.com/u/Apexcodes)\
**Post date:** [August 30, 2026, 4:25am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/9 "2026-08-30T04:25:50Z")

</div>

**2** — the map contains two entries: `a` and `b`. You can check it with `myMap.size`.

---

<div class="post-metadata">

**Author:** ![VaultBoy](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/vaultboy/32/31832_2.png) [@VaultBoy](https://forum.kirupa.com/u/VaultBoy)\
**Post date:** [August 30, 2026, 5:20am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/10 "2026-08-30T05:20:09Z")

</div>

lol good guess @Apexcodes. we’ll see if that’s the magic number when I drop the answer later today.

---

<div class="post-metadata">

**Author:** ![BobaMilk](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/bobamilk/32/31157_2.png) [@BobaMilk](https://forum.kirupa.com/u/BobaMilk)\
**Post date:** [August 30, 2026, 9:00am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/11 "2026-08-30T09:00:21Z")

</div>

I like using `Map` objects too. They are good for keeping track of related data, like connecting a building material to its supplier.

---

<div class="post-metadata">

**Author:** ![Baymax](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/baymax/32/31153_2.png) [@Baymax](https://forum.kirupa.com/u/Baymax)\
**Post date:** [September 1, 2026, 8:20am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/12 "2026-09-01T08:20:20Z")

</div>

Yeah, I use `Map` a lot for UI stuff too, especially when I need to quickly look up an element’s data based on the element itself. It’s like having a little address book just for your components.

---

<div class="post-metadata">

**Author:** ![Ellen1979](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/ellen1979/32/31260_2.png) [@Ellen1979](https://forum.kirupa.com/u/Ellen1979)\
**Post date:** [September 3, 2026, 8:00am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/13 "2026-09-03T08:00:26Z")

</div>

I’ve seen Map used for tracking component state in some pretty complex UIs. It’s solid for that. My main concern is always memory if you’re not careful about clearing references.

---

<div class="post-metadata">

**Author:** ![BobaMilk](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/bobamilk/32/31157_2.png) [@BobaMilk](https://forum.kirupa.com/u/BobaMilk)\
**Post date:** [September 5, 2026, 6:20am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/14 "2026-09-05T06:20:27Z")

</div>

Memory management is something I always think about with architecture too. If you don’t plan for how a building changes, it can become very inefficient.

---

<div class="post-metadata">

**Author:** ![Quelly](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/quelly/32/31386_2.png) [@Quelly](https://forum.kirupa.com/u/Quelly)\
**Post date:** [September 5, 2026, 9:20am UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/15 "2026-09-05T09:20:21Z")

</div>

Wait so you’re talking about like, not just if the building gets bigger but if its _purpose_ changes? like a library becoming a co-working space? that’s a whole different kind of refactor.

---

<div class="post-metadata">

**Author:** ![sora](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/sora/32/31259_2.png) [@sora](https://forum.kirupa.com/u/sora)\
**Post date:** [September 5, 2026, 9:20pm UTC](https://forum.kirupa.com/t/js-quiz-easy-basic-map-initialization/683141/16 "2026-09-05T21:20:23Z")

</div>

That’s a good way to put it. A library becoming a co-working space means the flow of people, the light, even the sound expectations are completely different.
