What problem does it solve? Developers often struggle with JavaScript's tricky behaviors like type coercion, hoisting, the event loop, and the this keyword, leading to subtle bugs and confusing debugging sessions. This Skill provides a structured reference of 33+ essential JavaScript concepts with runnable code examples to explain, debug, and teach the language. ## Core Features & Use Cases - Fundamentals Reference: Covers primitives, type coercion, equality operators, scope, closures, and var/let/const differences with concrete examples. - Async & Event Loop Guidance: Explains call stack, microtasks vs macrotasks, callbacks, Promises, and async/await patterns including parallel execution. - Functional & Object Patterns: Documents higher-order functions, currying, composition, prototypal inheritance, and modern ES6+ syntax like destructuring and optional chaining. - Use Case: When a developer asks why Promise.resolve().then() logs before setTimeout(..., 0), use this Skill to explain the microtask queue with a clear code demonstration. ## Quick Start Explain why '5' + 3 equals '53' but '5' - 3 equals 2 in JavaScript using the type coercion rules.