| # | title | topic | type | difficulty |
|---|---|---|---|---|
| 1 | Array.of vs the Array constructor | Arrays | Multiple choice | Medium |
| 2 | The default sort trap | Arrays | Multiple choice | Medium |
| 3 | Numeric-preferred operators | Type Coercion | Multiple choice | Medium |
| 4 | var vs let in async loops | Quiz: JS Questions | Multiple choice | Medium |
| 5 |
| Arrow functions don't bind this |
| Quiz: JS Questions |
| Multiple choice |
| Medium |
| 6 | Hoisting and the temporal dead zone | Quiz: JS Questions | Multiple choice | Medium |
| 7 | Math.max edge cases | Math | Multiple choice | Medium |
| 8 | Mitigating cross-site scripting | Security | Multiple choice | Medium |
| 9 | for…in vs for…of on arrays | Loops | Multiple choice | Medium |
| 10 | unknown vs any | TypeScript | Multiple choice | Medium |
| 11 | The get trap intercepts everything | Proxy & Reflect | Multiple choice | Medium |
| 12 | typeof's famous lies | YDKJS Book | Multiple choice | Medium |
| 13 | Automatic Semicolon Insertion strikes | YDKJS Book | Multiple choice | Medium |
| 14 | b + a + + a + a | WTF Quirks | Multiple choice | Medium |
| 15 | Comparison chains don't chain | WTF Quirks | Multiple choice | Medium |
| 16 | Math.min() > Math.max() | WTF Quirks | Multiple choice | Medium |
| 17 | Spread and rest, everywhere at once | Quiz: JS Questions | Multiple choice | Medium |
| 18 | Symbols hide from everything | Quiz: JS Questions | Multiple choice | Medium |
| 19 | Static methods don't reach instances | Quiz: JS Questions | Multiple choice | Medium |
| 20 | The accidentally quadratic accumulator | Patterns & Performance | Multiple choice | Medium |
| 21 | Plain object or Map? | Patterns & Performance | Multiple choice | Medium |
| 22 | script: async vs defer | Web Platform | Multiple choice | Medium |
| 23 | Stack frames and the heap | Event Loop & Memory | Multiple choice | Medium |
| 24 | Parameters are their own variables | Scope & Hoisting | Multiple choice | Medium |
| 25 | Hoisting shadows the outer world | Scope & Hoisting | Multiple choice | Medium |
| 26 | Hoisting inside a higher-order function | Scope & Hoisting | Multiple choice | Medium |
| 27 | Function declarations outrank var | Scope & Hoisting | Multiple choice | Medium |
| 28 | Adding the same listener twice | DOM Events | Multiple choice | Medium |
| 29 | stopPropagation's blind spot | DOM Events | Multiple choice | Medium |
| 30 | Unsubscribing with AbortController | DOM Events | Multiple choice | Medium |