Alan Plum (2018-02-13T12:37:54.000Z)
me at pluma.io (2018-02-13T13:08:05.591Z)
Not quite. If the `else` (or `nocatch`, whatever) block throws, it would bypass the `catch` block but still hit the `finally` block the same way an exception in the `catch` block would: * if `a` doesn't throw: a, b, d * if `a` throws: a, c, d * if `b` throws: a, b, d * if `a` and `c` throw: a, c, d This is analogous to this promise equivalent: ``` console.log("a"); a() .then(() => { console.log("b"); return b(); }, () => { console.log("c"); return c(); }) .finally(() => { console.log("d"); }) ``` (note the use of both arguments to `then`) Your reading wouldn't really provide anything that can't be done by simply moving the else block's content into the try block.