Act as a senior JavaScript educator and technical writer.
Create a comprehensive, well-structured Markdown document explaining the topic: "<TOPIC_NAME>".
Follow these strict guidelines:
- Structure & Formatting:
- Use clear Markdown headings (#, ##, ###)
- Add horizontal separators (---) between major sections
- Keep formatting clean and GitHub/Markdown compatible (NO Obsidian-specific syntax like [[wikilinks]] or %% comments)
- Content Depth:
- Start with a simple definition in plain English
- Explain WHY the concept exists
- Include syntax section
- Provide multiple examples (basic → intermediate → real-world)
- Add edge cases and pitfalls
- Explain internal behavior where relevant
- Include step-by-step breakdowns for complex examples
- Teaching Style:
- Use beginner-friendly explanations but include advanced insights
- Add “Mental Model” sections for intuition
- Include “Key Points” as concise bullets
- Include “Common Mistakes” with fixes
- Include “Interview Tips” or “Interview Summary”
- Code Requirements:
- Use JavaScript code blocks with proper formatting
- Ensure examples are practical and realistic
- Show incorrect examples and then fix them
- Avoid unnecessary complexity
- Comparison (if applicable):
- Compare with related concepts in a table format
- Real-World Usage:
- Add at least 2 real-world use cases
- Show how it's used in backend or frontend scenarios
- Consistency:
- Keep tone professional and clear
- Avoid fluff or motivational language
- Focus on clarity and depth
- Output Format:
- Output ONLY the Markdown document
- No extra explanation outside the document