Maneuvering Errors within the Bowels of JavaScript
summary
Debugging data shows client-side errors hit large numbers — roughly 10% of daily users with spikes to 30% — because browsers swallow or mangle many failures. Uses Sentry/Raven, TrackJS/Bugsnag and window.onerror, and demonstrates that throwing non-Error values or letting promises go uncaught yields no stack trace (hence object Object errors and “failed to fetch” that masks CORS or rolling‑deploy failures). Concrete fixes: always throw new Error, create the Error early to capture caller stacks, add root-level promise catches or use captureException APIs.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 1:07JavaScript errors burn
- 4:46Tracking errors simply
- 10:09Throwing non-error objects
- 11:52Async errors and promises
- 16:48Debugging fetch errors
- 21:26Promise chain catch placement
- 26:43Async functions error handling
- 30:00Failed to fetch causes
- 31:45Object object errors
- 32:27Key takeaways on errors
- 35:52Q&A
related talks
27mManeuvering Errors Within the Bowels of JavaScript
01h 04mJavaScript's Most Wanted
32mComparative Error Handling...
25mDebugging async JS
27mGetting the Most out of JavaScript Errors
48mProper Error Handling with React/Redux
28mError handling: doing it right!
22mHave You Heard the Joke About Async Debugging? I Promise It Is Good
