1<!doctype html> 2<html lang="en" dir="ltr" class="blog-wrapper blog-list-page plugin-blog plugin-id-default" data-has-hydrated="false"> 3<head> 4<meta charset="UTF-8"> 5<meta name="generator" content="Docusaurus v3.1.1"> 6<title data-rh="true">Blog | The Official Front End Interview Handbook 2026</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://www.frontendinterviewhandbook.com/blog"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" property="og:locale:alternate" content="zh_CN"><meta data-rh="true" property="og:locale:alternate" content="es"><meta data-rh="true" property="og:locale:alternate" content="ja_JP"><meta data-rh="true" property="og:locale:alternate" content="kr"><meta data-rh="true" property="og:locale:alternate" content="pl"><meta data-rh="true" property="og:locale:alternate" content="pt_BR"><meta data-rh="true" property="og:locale:alternate" content="ru"><meta data-rh="true" property="og:locale:alternate" content="tl"><meta data-rh="true" property="og:locale:alternate" content="bn"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" property="og:title" content="Blog | The Official Front End Interview Handbook 2026"><meta data-rh="true" name="description" content="Blog"><meta data-rh="true" property="og:description" content="Blog"><meta data-rh="true" name="docusaurus_tag" content="blog_posts_list"><meta data-rh="true" name="docsearch:docusaurus_tag" content="blog_posts_list"><link data-rh="true" rel="icon" href="/img/favicon.png"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/blog" hreflang="en"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/zh-CN/blog" hreflang="zh-CN"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/es/blog" hreflang="es"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/ja-JP/blog" hreflang="ja-JP"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/kr/blog" hreflang="kr"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/pl/blog" hreflang="pl"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/pt-BR/blog" hreflang="pt-BR"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/ru/blog" hreflang="ru"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/tl/blog" hreflang="tl"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/bn/blog" hreflang="bn"><link data-rh="true" rel="alternate" href="https://www.frontendinterviewhandbook.com/blog" hreflang="x-default"><link data-rh="true" rel="preconnect" href="https://21T5PEFGI7-dsn.algolia.net" crossorigin="anonymous"><link data-rh="true" rel="canonical" href="https://www.yangshuntay.com/blog/are-front-end-development-skills-enough-for-a-career"><link rel="alternate" type="application/rss+xml" href="/blog/rss.xml" title="The Official Front End Interview Handbook 2026 RSS Feed"> 7<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="The Official Front End Interview Handbook 2026 Atom Feed"> 8 9<link rel="preconnect" href="https://www.google-analytics.com"> 10<link rel="preconnect" href="https://www.googletagmanager.com">
vendor: 64 bytes, lines 10-11
10 11<script async src="https://www.googletagmanager.com/gtag/js?id=
11G-D9B6CHX36V
vendor: 12 bytes, line 11
11"></script>
12<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-D9B6CHX36V",{})</script>
12 13 14 15<link rel="search" type="application/opensearchdescription+xml" title="The Official Front End Interview Handbook 2026" href="/opensearch.xml"> 16<link rel="preconnect" href="https://www.google-analytics.com"> 17<link rel="preconnect" href="https://www.googletagmanager.com">
vendor: 64 bytes, lines 17-18
17 18<script async src="https://www.googletagmanager.com/gtag/js?id=
18UA-44622716-3
vendor: 12 bytes, line 18
18"></script>
19<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","UA-44622716-3",{anonymize_ip:!0})</script>
19<link rel="stylesheet" href="/assets/css/styles.355d497e.css">
20<script src="/assets/js/runtime~main.4ff07eaa.js" defer="defer"></script>
vendor: 1 bytes, line 20
20
21<script src="/assets/js/main.f096ec81.js" defer="defer"></script>
21 22</head> 23<body class="navigation-with-keyboard">
24<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return localStorage.getItem("theme")}catch(t){}}();t(null!==e?e:"light")}(),function(){try{const a=new URLSearchParams(window.location.search).entries();for(var[t,e]of a)if(t.startsWith("docusaurus-data-")){var n=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(n,e)}}catch(t){}}(),document.documentElement.setAttribute("data-announcement-bar-initially-dismissed",function(){try{return"true"===localStorage.getItem("docusaurus.announcement.dismiss")}catch(t){}return!1}())</script>
24<div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_NtMP" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><div class="announcementBar_wkgx" role="banner"><div class="content_UXg3 announcementBarContent_XRJG">We are now part of <a href="https://www.greatfrontend.com/?utm_source=frontendinterviewhandbook&utm_medium=referral&utm_content=banner&gnrs=frontendinterviewhandbook" target="_blank">GreatFrontEnd</a>, a front end interview preparation platform created by ex-Meta and Google Engineers. <a href="https://www.greatfrontend.com/?utm_source=frontendinterviewhandbook&utm_medium=referral&utm_content=banner&gnrs=frontendinterviewhandbook" target="_blank">Get 20% off today</a>!</div></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/"><div class="navbar__logo"><img src="/img/logo.svg" alt="Front End Interview Handbook Logo" class="themedComponent_O_lY themedComponent--light_vKZ8"><img src="/img/logo.svg" alt="Front End Interview Handbook Logo" class="themedComponent_O_lY themedComponent--dark_ju0U"></div><b class="navbar__title text--truncate">Front End Interview Handbook</b></a><a class="navbar__item navbar__link" href="/introduction">Start reading</a><div class="navbar__item dropdown dropdown--hoverable"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">Practice</a><ul class="dropdown__menu"><li><a href="https://www.greatfrontend.com/questions?utm_source=frontendinterviewhandbook&utm_medium=referral&utm_content=banner&gnrs=frontendinterviewhandbook" target="_blank" rel="noopener noreferrer" class="dropdown__link">Coding Questions<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li><a href="https://www.greatfrontend.com/questions/system-design?utm_source=frontendinterviewhandbook&utm_medium=referral&utm_content=banner&gnrs=frontendinterviewhandbook" target="_blank" rel="noopener noreferrer" class="dropdown__link">System Design<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li><a href="https://www.greatfrontend.com/questions/quiz?utm_source=frontendinterviewhandbook&utm_medium=referral&utm_content=banner&gnrs=frontendinterviewhandbook" target="_blank" rel="noopener noreferrer" class="dropdown__link">Quiz Questions<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><a class="navbar__item navbar__link" href="/front-end-system-design">System design</a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/blog">Blog</a></div><div class="navbar__items navbar__items--right"><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link"><svg viewBox="0 0 24 24" width="20" height="20" aria-hidden="true" class="iconLanguage_iyEr"><path fill="currentColor" d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path></svg>English</a><ul class="dropdown__menu"><li><a href="/blog" target="_self" rel="noopener noreferrer" class="dropdown__link dropdown__link--active" lang="en">English</a></li><li><a href="/zh-CN/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="zh-CN">ç®ä½ä¸æ</a></li><li><a href="/es/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="es">Español</a></li><li><a href="/ja-JP/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="ja-JP">æ¥æ¬èª</a></li><li><a href="/kr/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="kr">íêµì´</a></li><li><a href="/pl/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="pl">Polski</a></li><li><a href="/pt-BR/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="pt-BR">Português</a></li><li><a href="/ru/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="ru">Ð ÑÑÑкий</a></li><li><a href="/tl/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="tl">Tagalog</a></li><li><a href="/bn/blog" target="_self" rel="noopener noreferrer" class="dropdown__link" lang="bn">বাà¦à¦²à¦¾</a></li></ul></div><a href="https://github.com/yangshun/front-end-interview-handbook" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link navbar-icon navbar-icon-github" aria-label="GitHub repository"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 496 512" height="16" width="16" xmlns="http://www.w3.org/2000/svg"> 25 <path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path> 26 </svg></a><a href="https://discord.com/invite/NDFx8f6P6B" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link navbar-icon navbar-icon-discord" aria-label="Discord channel"><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 640 512" height="16" width="16" xmlns="http://www.w3.org/2000/svg"><path d="M524.531,69.836a1.5,1.5,0,0,0-.764-.7A485.065,485.065,0,0,0,404.081,32.03a1.816,1.816,0,0,0-1.923.91,337.461,337.461,0,0,0-14.9,30.6,447.848,447.848,0,0,0-134.426,0,309.541,309.541,0,0,0-15.135-30.6,1.89,1.89,0,0,0-1.924-.91A483.689,483.689,0,0,0,116.085,69.137a1.712,1.712,0,0,0-.788.676C39.068,183.651,18.186,294.69,28.43,404.354a2.016,2.016,0,0,0,.765,1.375A487.666,487.666,0,0,0,176.02,479.918a1.9,1.9,0,0,0,2.063-.676A348.2,348.2,0,0,0,208.12,430.4a1.86,1.86,0,0,0-1.019-2.588,321.173,321.173,0,0,1-45.868-21.853,1.885,1.885,0,0,1-.185-3.126c3.082-2.309,6.166-4.711,9.109
26-7.137a1.819,1.819,0,0,1,1.9-.256c96.229,43.917,200.41,43.917,295.5,0a1.812,1.812,0,0,1,1.924.233c2.944,2.426,6.027,4.851,9.132,7.16a1.884,1.884,0,0,1-.162,3.126,301.407,301.407,0,0,1-45.89,21.83,1.875,1.875,0,0,0-1,2.611,391.055,391.055,0,0,0,30.014,48.815,1.864,1.864,0,0,0,2.063.7A486.048,486.048,0,0,0,610.7,405.729a1.882,1.882,0,0,0,.765-1.352C623.729,277.594,590.933,167.465,524.531,69.836ZM222.491,337.58c-28.972,0-52.844-26.587-52.844-59.239S193.056,219.1,222.491,219.1c29.665,0,53.306,26.82,52.843,59.239C275.334,310.993,251.924,337.58,222.491,337.58Zm195.38,0c-28.971,0-52.843-26.587-52.843-59.239S388.437,219.1,417.871,219.1c29.667,0,53.307,26.82,52.844,59.239C470.715,310.993,447.538,337.58,417.871,337.58Z"></path></svg></a><a href="https://x.com/greatfrontend" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link navbar-icon navbar-icon-twitter" aria-label="Twitter page"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" width="16" height="16" fill="currentColor" version="1.1"><path d="M178.57 127.15 290.27 0h-26.46l-97.03 110.38L89.34 0H0l117.13 166.93L0 300.25h26.46l102.4-116.59 81.8 116.59h89.34M36.01 19.54H76.66l187.13 262.13h-40.66"/></svg></a><div class="toggle_LLK4 colorModeToggle_XfUp"><button class="clean-btn toggleButton_Eh_B toggleButtonDisabled_erNe" type="button" disabled="" title="Switch between dark and light mode (currently light mode)" aria-label="Switch between dark and light mode (currently light mode)" aria-live="polite"><svg viewBox="0 0 24 24" width="24" height="24" class="lightToggleIcon_r_PM"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" class="darkToggleIcon_W9St"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg></button></div><div class="navbarSearchContainer_Dp1q"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search (Command+K)"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20" aria-hidden="true"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_P1Dz"><div class="container margin-vert--lg"><div class="row"><aside class="col col--3"><nav class="sidebar_oAo_ thin-scrollbar" aria-label="Blog recent posts navigation"><div class="sidebarItemTitle_h5SG margin-bottom--md">Recent posts</div><ul class="sidebarItemList_rroK clean-list"><li class="sidebarItem_HvUD"><a class="sidebarItemLink_Sk5s" href="/blog/javascript-object-vs-map">When You Should Prefer Map Over Object In JavaScript</a></li><li class="sidebarItem_HvUD"><a class="sidebarItemLink_Sk5s" href="/blog/front-end-vs-back-end-system-design-interviews">Front End vs. Back End System Design Interviews</a></li><li class="sidebarItem_HvUD"><a class="sidebarItemLink_Sk5s" href="/blog/a-glimpse-into-front-end-interviews">A Glimpse into Front End Interviews</a></li><li class="sidebarItem_HvUD"><a class="sidebarItemLink_Sk5s" href="/blog/front-end-career-questions">Front End Career Questions</a></li><li class="sidebarItem_HvUD"><a class="sidebarItemLink_Sk5s" href="/blog/are-front-end-development-skills-enough-for-a-career">Are Front End Development Skills Enough for a Career?</a></li></ul></nav></aside><main class="col col--7" itemscope="" itemtype="https://schema.org/Blog"><article class="margin-bottom--xl" itemprop="blogPost" itemscope="" itemtype="https://schema.org/BlogPosting"><meta itemprop="description" content="See discussions on Reddit"><header><h2 class="title_zRvU" itemprop="headline"><a itemprop="url" href="/blog/javascript-object-vs-map">When You Should Prefer Map Over Object In JavaScript</a></h2><div class="container_QkgL margin-vert--md"><time datetime="2022-06-18T00:00:00.000Z" itemprop="datePublished">June 18, 2022</time> · <!-- -->17 min read</div><div class="margin-top--md margin-bottom--sm row"><div class="col col--6 authorCol_K8n9"><div class="avatar margin-bottom--sm"><a href="https://x.com/he_zhenghao" target="_blank" rel="noopener noreferrer" class="avatar__photo-link"><img class="avatar__photo" src="/img/authors/zhenghao.jpg" alt="Zhenghao He" itemprop="image"></a><div class="avatar__intro" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><div class="avatar__name"><a href="https://x.com/he_zhenghao" target="_blank" rel="noopener noreferrer" itemprop="url"><span itemprop="name">Zhenghao He</span></a></div><small class="avatar__subtitle" itemprop="description">Engineering Manager at Robinhood, ex-Amazon</small></div></div></div></div></header><div class="markdown" itemprop="articleBody"> 27<blockquote> 28<p>See discussions on <a href="https://www.reddit.com/r/javascript/comments/vgs7y1/why_you_should_prefer_map_over_object_in/" target="_blank" rel="noopener noreferrer">Reddit</a></p> 29</blockquote> 30<p>In JavaScript, objects are handy. They allow us to easily group multiple pieces of data together. After ES6, we got a new addition to the language - <code>Map</code>. In a lot of aspects, it seems like a more capable <code>Object</code> with a somewhat clumsy interface. However, most people still reach for objects when they need a <a href="https://en.wikipedia.org/wiki/Hash_table" target="_blank" rel="noopener noreferrer">hash map</a> and only switch to using <code>Map</code> when they realize the keys can't just be strings for their use cases. As a result, <code>Map</code> remains <strong>underused</strong> in today'
30s JavaScript community.</p> 31<p>In this post, I will break down all the reasons when you should consider using <code>Map</code> more and its performance characteristics with benchmarks.</p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_EM4f padding--none margin-left--sm"><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/front-end">front end</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/javascript">javascript</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/interview">interview</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/object">object</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/map">map</a></li></ul></div><div class="col text--right col--3"><a aria-label="Read more about When You Should Prefer Map Over Object In JavaScript" href="/blog/javascript-object-vs-map"><b>Read More</b></a></div></footer></article><article class="margin-bottom--xl" itemprop="blogPost" itemscope="" itemtype="https://schema.org/BlogPosting"><meta itemprop="description" content="Walkthrough of similarities and differences between front end vs. back end system design interviews and my thoughts on a front end career ceiling."><header><h2 class="title_zRvU" itemprop="headline"><a itemprop="url" href="/blog/front-end-vs-back-end-system-design-interviews">Front End vs. Back End System Design Interviews</a></h2><div class="container_QkgL margin-vert--md"><time datetime="2021-12-23T00:00:00.000Z" itemprop="datePublished">December 23, 2021</time> · <!-- -->9 min read</div><div class="margin-top--md margin-bottom--sm row"><div class="col col--6 authorCol_K8n9"><div class="avatar margin-bottom--sm"><a href="https://x.com/he_zhenghao" target="_blank" rel="noopener noreferrer" class="avatar__photo-link"><img class="avatar__photo" src="/img/authors/zhenghao.jpg" alt="Zhenghao He" itemprop="image"></a><div class="avatar__intro" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><div class="avatar__name"><a href="https://x.com/he_zhenghao" target="_blank" rel="noopener noreferrer" itemprop="url"><span itemprop="name">Zhenghao He</span></a></div><small class="avatar__subtitle" itemprop="description">Engineering Manager at Robinhood, ex-Amazon</small></div></div></div></div></header><div class="markdown" itemprop="articleBody"><p>Walkthrough of similarities and differences between front end vs. back end system design interviews and my thoughts on a front end career ceiling.</p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_EM4f padding--none margin-left--sm"><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/front-end">front end</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/back-end">back end</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/system-design">system design</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/interview">interview</a></li></ul></div><div class="col text--right col--3"><a aria-label="Read more about Front End vs. Back End System Design Interviews" href="/blog/front-end-vs-back-end-system-design-interviews"><b>Read More</b></a></div></footer></article><article class="margin-bottom--xl" itemprop="blogPost" itemscope="" itemtype="https://schema.org/BlogPosting"><meta itemprop="description" content="A glimpse into the front end interview process and questions that frequently come up."><header><h2 class="title_zRvU" itemprop="headline"><a itemprop="url" href="/blog/a-glimpse-into-front-end-interviews">A Glimpse into Front End Interviews</a></h2><div class="container_QkgL margin-vert--md"><time datetime="2021-08-30T00:00:00.000Z" itemprop="datePublished">August 30, 2021</time> · <!-- -->5 min read</div><div class="margin-top--md margin-bottom--sm row"><div class="col col--6 authorCol_K8n9"><div class="avatar margin-bottom--sm"><a href="https://github.com/li-kai" target="_blank" rel="noopener noreferrer" class="avatar__photo-link"><img class="avatar__photo" src="https://github.com/li-kai.png" alt="Kai Li" itemprop="image"></a><div class="avatar__intro" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><div class="avatar__name"><a href="https://github.com/li-kai" target="_blank" rel="noopener noreferrer" itemprop="url"><span itemprop="name">Kai Li</span></a></div><small class="avatar__subtitle" itemprop="description">Software Engineer at Stripe, ex-Quora, ex-Zendesk</small></div></div></div></div></header><div class="markdown" itemprop="articleBody"> 32<p>A glimpse into the front end interview process and questions that frequently come up.</p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_EM4f padding--none margin-left--sm"><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/front-end">front end</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/interview">interview</a></li></ul></div><div class="col text--right col--3"><a aria-label="Read more about A Glimpse into Front End Interviews" href="/blog/a-glimpse-into-front-end-interviews"><b>Read More</b></a></div></footer></article><article class="margin-bottom--xl" itemprop="blogPost" itemscope="" itemtype="https://schema.org/BlogPosting"><meta itemprop="description" content="Recently a junior front end engineer at a startup in Singapore reached out to me to ask me about front end development as a career."><header><h2 class="title_zRvU" itemprop="headline"><a itemprop="url" href="/blog/front-end-career-questions">Front End Career Questions</a></h2><div class="container_QkgL margin-vert--md"><time datetime="2021-08-28T00:00:00.000Z" itemprop="datePublished">August 28, 2021</time> · <!-- -->4 min read</div><div class="margin-top--md margin-bottom--sm row"><div class="col col--6 authorCol_K8n9"><div class="avatar margin-bottom--sm"><a href="https://github.com/yangshun" target="_blank" rel="noopener noreferrer" class="avatar__photo-link"><img class="avatar__photo" src="https://github.com/yangshun.png" alt="Yangshun Tay" itemprop="image"></a><div class="avatar__intro" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><div class="avatar__name"><a href="https://github.com/yangshun" target="_blank" rel="noopener noreferrer" itemprop="url"><span itemprop="name">Yangshun Tay</span></a></div><small class="avatar__subtitle" itemprop="description">Engineering Lead at Facebook</small></div></div></div></div></header><div class="markdown" itemprop="articleBody"> 33<p>Recently a junior front end engineer at a startup in Singapore reached out to me to ask me about front end development as a career.</p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_EM4f padding--none margin-left--sm"><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/front-end">front end</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/career">career</a></li></ul></div><div class="col text--right col--3"><a aria-label="Read more about Front End Career Questions" href="/blog/front-end-career-questions"><b>Read More</b></a></div></footer></article><article class="margin-bottom--xl" itemprop="blogPost" itemscope="" itemtype="https://schema.org/BlogPosting"><meta itemprop="description" content="Recently, an undergrad freshmen I met at an event asked me a question regarding Front End development as a career."><header><h2 class="title_zRvU" itemprop="headline"><a itemprop="url" href="/blog/are-front-end-development-skills-enough-for-a-career">Are Front End Development Skills Enough for a Career?</a></h2><div class="container_QkgL margin-vert--md"><time datetime="2019-11-03T00:00:00.000Z" itemprop="datePublished">November 3, 2019</time> · <!-- -->8 min read</div><div class="margin-top--md margin-bottom--sm row"><div class="col col--6 authorCol_K8n9"><div class="avatar margin-bottom--sm"><a href="https://github.com/yangshun" target="_blank" rel="noopener noreferrer" class="avatar__photo-link"><img class="avatar__photo" src="https://github.com/yangshun.png" alt="Yangshun Tay" itemprop="image"></a><div class="avatar__intro" itemprop="author" itemscope="" itemtype="https://schema.org/Person"><div class="avatar__name"><a href="https://github.com/yangshun" target="_blank" rel="noopener noreferrer" itemprop="url"><span itemprop="name">Yangshun Tay</span></a></div><small class="avatar__subtitle" itemprop="description">Front End Engineer at Facebook</small></div></div></div></div></header><div class="markdown" itemprop="articleBody"> 34<p>Recently, an undergrad freshmen I met at an event asked me a question regarding Front End development as a career.</p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_EM4f padding--none margin-left--sm"><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/front-end">front end</a></li><li class="tag_HG0W"><a class="tag_xW5H tagRegular_y5KJ" href="/blog/tags/career">career</a></li></ul></div><div class="col text--right col--3"><a aria-label="Read more about Are Front End Development Skills Enough for a Career?" href="/blog/are-front-end-development-skills-enough-for-a-career"><b>Read More</b></a></div></footer></article><nav class="pagination-nav" aria-label="Blog list page navigation"></nav></main></div></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links">
34<div class="col footer__col"><div class="footer__title">General</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/introduction">Get started</a></li><li class="footer__item"><a class="footer__link-item" href="/trivia">Trivia questions</a></li><li class="footer__item"><a class="footer__link-item" href="/company-interview-questions">Company questions</a></li><li class="footer__item"><a class="footer__link-item" href="/blog">Blog</a></li></ul></div><div class="col footer__col"><div class="footer__title">Coding</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/coding/algorithms">Algorithms</a></li><li class="footer__item"><a class="footer__link-item" href="/coding/javascript-utility-function">JavaScript utility functions</a></li><li class="footer__item"><a class="footer__link-item" href="/coding/build-front-end-user-interfaces">User interfaces</a></li></ul></div><div class="col footer__col"><div class="footer__title">System design</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/front-end-system-design">System design overview</a></li><li class="footer__item"><a class="footer__link-item" href="/front-end-system-design/ui-components">User interface components</a></li><li class="footer__item"><a class="footer__link-item" href="/front-end-system-design/applications">Applications</a></li></ul></div><div class="col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://www.greatfrontend.com?utm_source=frontendinterviewhandbook&utm_medium=referral&utm_content=banner&gnrs=frontendinterviewhandbook" target="_blank" rel="noopener noreferrer" class="footer__link-item">GreatFrontEnd<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://github.com/yangshun/front-end-interview-handbook" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://x.com/greatfrontend" target="_blank" rel="noopener noreferrer" class="footer__link-item">X<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://discord.com/invite/NDFx8f6P6B" target="_blank" rel="noopener noreferrer" class="footer__link-item">Discord<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="/cdn-cgi/l/email-protection#e2818d8c96838196a2859087839684908d8c96878c86cc818d8f" target="_blank" rel="noopener noreferrer" class="footer__link-item">Contact us<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://www.techinterviewhandbook.org" target="_blank" rel="noopener noreferrer" class="footer__link-item">Tech Interview Handbook<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_KAeB"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center">
34<div class="footer__copyright">Copyright © 2026 Yangshun Tay and GreatFrontEnd</div></div></div></footer></div> 35<!-- Cloudflare Pages Analytics -->
vendor: 108 bytes, line 35
35<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
vendor: 99 bytes, line 35
35<script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "
358c17dd1a2dfa44578e9faaff39e55bff
vendor: 13 bytes, line 35
35"}'></script>
35<!-- Cloudflare Pages Analytics -->
35<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a44fe0853bac10b0',t:'MTc5MTA3MTcxOQ=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
35</body> 36</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.