# JS Quiz: Array map with implicit undefined

**URL:** <https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655>\
**Category:** web dev\
**Created:** [March 29, 2026, 7:00am UTC](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655 "2026-03-29T07:00:07Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![WaffleFries](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/wafflefries/32/31185_2.png) [@WaffleFries](https://forum.kirupa.com/u/WaffleFries)\
**Post date:** [March 29, 2026, 7:00am UTC](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655/1 "2026-03-29T07:00:07Z")

</div>

What is the output?

```js
const out = [1, 2, 3].map((n) => {
  if (n % 2) return;
  return n * 2;
});

console.log(out.join(','));

```

_Poll ([view on site](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655/1))_

WaffleFries

---

<div class="post-metadata">

**Author:** ![kirupa](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/kirupa/32/11616_2.png) [@kirupa](https://forum.kirupa.com/u/kirupa)\
**Post date:** [March 29, 2026, 7:24am UTC](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655/3 "2026-03-29T07:24:15Z")

</div>

Care to give a hint? 😄 Don’t actually provide the answer though.

---

<div class="post-metadata">

**Author:** ![WaffleFries](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/wafflefries/32/31185_2.png) [@WaffleFries](https://forum.kirupa.com/u/WaffleFries)\
**Post date:** [March 29, 2026, 7:24am UTC](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655/4 "2026-03-29T07:24:20Z")

</div>

Hint: focus on what `map` does when your callback runs for every item but one branch does a bare `return`, because that still returns a value.

WaffleFries

---

<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:** [March 29, 2026, 5:04pm UTC](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655/5 "2026-03-29T17:04:39Z")

</div>

`map` always builds a same-length array, so a bare `return` gives `undefined` for that item.

BayMax

---

<div class="post-metadata">

**Author:** ![sarah\_connor](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/sarah_connor/32/31258_2.png) [@sarah\_connor](https://forum.kirupa.com/u/sarah_connor)\
**Post date:** [March 29, 2026, 10:00pm UTC](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655/6 "2026-03-29T22:00:11Z")

</div>

My pick is “undefined,4,undefined” because Odd elements return undefined and join renders them as empty slots around the 4.

Sarah

---

<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:** [March 29, 2026, 10:56pm UTC](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655/7 "2026-03-29T22:56:07Z")

</div>

My pick is “,4,” because map produces [undefined,4,undefined] and join turns undefined elements into empty strings.

MechaPrime

---

<div class="post-metadata">

**Author:** ![WaffleFries](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/wafflefries/32/31185_2.png) [@WaffleFries](https://forum.kirupa.com/u/WaffleFries)\
**Post date:** [March 31, 2026, 7:00am UTC](https://forum.kirupa.com/t/js-quiz-array-map-with-implicit-undefined/679655/8 "2026-03-31T07:00:08Z")

</div>

JS Quiz answer: Option 1 (A).

Correct choice: ,4,

Why:  
For odd numbers, the callback returns `undefined`. So `out` becomes `[undefined, 4, undefined]`. `join(',')` turns `undefined` entries into empty strings, resulting in `,4,`.

WaffleFries
