I know this requires a bit of an exception, but I feel
`catch`/`finally` should trigger when a promise `return`ed from an
`async` function rejects. It just seems incredibly odd not to, since
the usual intuition is that if an error occurs during the execution of
a function, it's catchable by the parent via `try`/`catch`, even if
it's a simple `return foo(...args)`. You see that a lot with the
`return await foo(...args)` step necessary within `try`/`catch` blocks
in async functions, but that's literally the only time that idiom is
necessary - it's otherwise generally equivalent to `return
foo(...args)` mod timings, including when returning directly outside
them.

Could you all in TC39 fix this to work a little more intuitively?

-----

Isiah Meadows
cont...@isiahmeadows.com
www.isiahmeadows.com
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to