The fact is that after the matched throw , execution is immediately interrupted and immediately proceed to catch .
console.log("128 THROW САМ ПО СЕБЕ БЕЗ TRY НЕ РАБОТАЕТ, хотя пример на странице 128 Фленагана есть"); var f132 = function (a,b) { if (a > b) { throw new Error ("заданная ошибка 1"); return a } if (a == b) { throw new Error ("заданная ошибка 2"); return 7 } else { throw new Error ("заданная ошибка 3"); return 9 } //catch (er) { console.log (er); } //SyntaxError: catch without try =>9 } console.log (f132(16,15)); But what about the page 128 of the Flenagan textbook, which states that you can use throw ?

returnimmediately afterthrowsimply useless, because it is unreachable. At first I was afraid that it was written in this book (even if for clarity, it’s said that thereturncode will never come to this ). - Regent