Why is confusing this a common JavaScript mistake?
Because this depends on how a function is called, not where it is defined, and arrow functions do not have their own this. Confusing this shows in any question about callbacks or class-like patterns, which is most non-trivial JS.
Verify This Answer
Cross-check this information using these trusted sources:
More FAQs in Common Mistakes Candidates Make in JavaScript Interviews
Because interviewers ask follow-ups that expose it. Reciting a definition does not help with 'why does this happen' or 'show me an example' follow-ups. Understand the reasoning behind each concept, not just the words.
Because it is core to how JS works on a single thread, and it explains async behavior. Treating JS as multithreaded or not understanding microtask vs macrotask ordering signals weak fundamentals, which interviewers catch.
Because == uses type coercion, which can cause unexpected results like '0' == 0 being true. === compares without coercion, requiring same type and value. Always use === unless you intentionally want coercion, which is rare.
Still have questions?
Browse all our FAQs or reach out to our support team
