🤯 JavaScript "Wat?" Moments

JavaScript Tricky Questions
The Rules Behind the Quirks

[] == false, null == undefined, typeof null === "object". These aren't bugs — they're rules. Learn the rules and they stop being surprising.

✅ 17 tricky questions  ·  ✅ First 5 interactive free  ·  ✅ Commonly asked in interviews

Practice Free →

🎯 How to use this page

Try the first 5 questions here — click a question, type your prediction, see if you got it right. The rest are in the interactive quiz. These questions are designed to expose blind spots — you need to predict, not read.

🎯 Why interviewers love these questions

They test your mental model of JavaScript's type system — the Abstract Equality Comparison algorithm, how coercion fires, how the event loop orders execution. A developer who can't explain [] == false probably also writes coercion bugs in production.

Misc Quirks

#16

Comma Operator Evaluation

HardMisc Quirks
▾

Type Coercion

#01

NaN comparison is always false

EasyType Coercion
▾
#02

Loose equality treats 0 and "" as false

EasyType Coercion
▾
#03

Plus operator concatenates strings instead of adding

MediumType Coercion
▾
#04

Plus operator: string concat vs numeric add

EasyType Coercion
▾
#05

Loose equality edge cases with null

MediumType Coercion
▾
#06

typeof for common values

EasyType Coercion
▾
#07

Unary plus converts to number

MediumType Coercion
▾
#08

null comparison inconsistency

HardType Coercion
▾
#09

Object valueOf for arithmetic, toString for template

HardType Coercion
▾
#10

parseInt stops at first invalid character

MediumType Coercion
▾
#11

String comparison is lexicographic

MediumType Coercion
▾
#12

Array coercion with plus operator

HardType Coercion
▾
#13

NaN is not equal to anything including itself

EasyType Coercion
▾
#14

Object equality is reference-based

MediumType Coercion
▾
#15

String spread — unicode-safe character split

MediumType Coercion
▾

Type Conversion

#17

Implicit Numeric Conversion

HardType Conversion
▾
🔒

12 more tricky questions in the quiz

Free accounts get 5 questions. Pro unlocks everything — all output questions, debug lab, theory mastery, and the leaderboard.

⚡ Start Free — 5 QuestionsView Pro — $9.99/mo →

Related Resources