Understanding Object Keys in JavaScript (Interview Trap Question)

I was recently asked an interesting JavaScript question in an interview: let obj = {}; let a = { a: 10 }; let b = { b: 20 }; obj[a] = 10; obj[b] = 20; console.log(obj[a]); 🤔 What will be the outpu...

By · · 1 min read
Understanding Object Keys in JavaScript (Interview Trap Question)

Source: DEV Community

I was recently asked an interesting JavaScript question in an interview: let obj = {}; let a = { a: 10 }; let b = { b: 20 }; obj[a] = 10; obj[b] = 20; console.log(obj[a]); 🤔 What will be the output? 👉 Output: 20 🔍 Why does this happen? In JavaScript, object keys can only be of type string or symbol. When you use an object as a key: obj[a] = 10; JavaScript internally converts the key to a string using .toString(): a.toString() // "[object Object]" b.toString() // "[object Object]" So effectively, your code becomes: obj["[object Object]"] = 10; obj["[object Object]"] = 20; 👉 The second assignment overwrites the first one. So: console.log(obj[a]); // 20 📌 Follow-up Question 1: How to fix this issue? ✅ Option 1: Use Map (Recommended) If you want to use objects as keys, use Map: const map = new Map(); map.set(a, 10); map.set(b, 20); console.log(map.get(a)); // 10 console.log(map.get(b)); // 20 👉 Map preserves reference identity, so a and b are treated as different keys. ⚠️ Option 2: C

Related Posts

Similar Topics

#ai (247)#research (112)#artificial intelligence (96)#data science (53)#industry (61)#webdev (53)#machine learning (35)#featured (44)#china (34)#open source (33)#slate sunday (30)#gis (14)#dataviz (14)#geospatial (14)#deep learning (27)#programming (27)#gamedev (25)#computer vision (17)#careers (21)#google brain (20)

Trending on ShareHub

  1. Understanding Modern JavaScript Frameworks in 2026
    by Alex Chen · Feb 12, 2026 · 0 likes
  2. The System Design Primer
    by Sarah Kim · Feb 12, 2026 · 0 likes
  3. Just shipped my first open-source project!
    by Alex Chen · Feb 12, 2026 · 0 likes
  4. OpenAI Blog
    by Sarah Kim · Feb 12, 2026 · 0 likes
  5. Building Accessible Web Applications: A Practical Guide
    by Alex Chen · Feb 12, 2026 · 0 likes
  6. Rapper Lil Poppa dead at 25, days after releasing new music
    Rapper Lil Poppa dead at 25, days after releasing new music
    by Anonymous User · Feb 19, 2026 · 0 likes
  7. write-for-us
    by Volt Raven · Mar 7, 2026 · 0 likes
  8. Before the Coffee Gets Cold: Heartfelt Story of Time Travel and Second Chances
    Before the Coffee Gets Cold: Heartfelt Story of Time Travel and Second Chances
    by Anonymous User · Feb 12, 2026 · 0 likes
    #coffee gets cold #the #time travel
  9. Best DoorDash Promo Code Reddit Finds for Top Discounts
    Best DoorDash Promo Code Reddit Finds for Top Discounts
    by Anonymous User · Feb 12, 2026 · 0 likes
    #doordash #promo #reddit
  10. Premium SEO Services That Boost Rankings & Revenue | VirtualSEO.Expert
    by Anonymous User · Feb 12, 2026 · 0 likes
  11. NBC under fire for commentary about Team USA women's hockey team
    NBC under fire for commentary about Team USA women's hockey team
    by Anonymous User · Feb 18, 2026 · 0 likes
  12. Where to Watch The Nanny: Streaming and Online Viewing Options
    Where to Watch The Nanny: Streaming and Online Viewing Options
    by Anonymous User · Feb 12, 2026 · 0 likes
    #streaming #the nanny #where
  13. How Much Is Kindle Unlimited? Subscription Cost and Plan Details
    How Much Is Kindle Unlimited? Subscription Cost and Plan Details
    by Anonymous User · Feb 12, 2026 · 0 likes
    #kindle unlimited #subscription #unlimited
  14. Russian skater facing backlash for comment about Amber Glenn
    Russian skater facing backlash for comment about Amber Glenn
    by Anonymous User · Feb 18, 2026 · 0 likes
  15. Google News
    Google News
    by Anonymous User · Feb 18, 2026 · 0 likes

Latest on ShareHub

Browse Topics

#artificial intelligence (31558)#data science (24017)#ai (16781)#generative ai (15034)#crypto (14994)#machine learning (14680)#bitcoin (14232)#featured (13553)#news & insights (13064)#crypto news (11082)

Around the Network