Skip to content
Artwork for Frontend First
Frontend First · Apr 10, 2024 · 1 hr 4 min

Throw is about control flow – not error handling

Sam and Ryan talk about why it’s better to think of throw as a general-purpose JavaScript language feature rather than something that should only be used for error handling. They discuss the ambiguity around the phrase “error handling”, situations that call for dealing with errors locally vs. globally, and how throw can be useful for non-error control flow. They also discuss the problems with trying to shoehorn dynamic features into a static site. Topics include: 0:00 - Intro 4:07 - Error handling vs. throw-try/catch 23:34 - Errors vs. Exceptions 31:52 - How Next.js uses throw for non-error control flow 40:44 - Adding a dynamic feature to a static site Links: Global progress in Next.js What color is your function Algebraic Effects for the Rest of Us

0:00-1:04:11

transcript

No transcript — this publisher did not publish one.

show notes

Sam and Ryan talk about why it’s better to think of throw as a general-purpose JavaScript language feature rather than something that should only be used for error handling. They discuss the ambiguity around the phrase “error handling”, situations that call for dealing with errors locally vs. globally, and how throw can be useful for non-error control flow. They also discuss the problems with trying to shoehorn dynamic features into a static site.

Topics include:

  • 0:00 - Intro
  • 4:07 - Error handling vs. throw-try/catch
  • 23:34 - Errors vs. Exceptions
  • 31:52 - How Next.js uses throw for non-error control flow
  • 40:44 - Adding a dynamic feature to a static site

Links:

links3