2014-09-26 19 views
47

Rzucam się Error od sposobu kopalni, który chcę wczesne wyjście z, jak poniżej:Czy muszę "zwrócić` po` throw` w JavaScript?

// No route found 
if(null === nextRoute) { 
    throw new Error('BAD_ROUTE'); 
} 

Czy muszę umieścić return; oświadczenie po moim throw? Na razie działa dla mnie. Jeśli jest to zbyteczne, wolałbym go nie umieszczać, ale nie jestem pewien, co mogą zrobić różne przeglądarki.

Odpowiedz

78

Nie musisz umieszczać oświadczenia return po throw, linia return nigdy nie zostanie osiągnięta jako odrzucenie wyjątku natychmiast przekazuje kontrolę zwrotną do osoby dzwoniącej.

+1

"Wyrzucenie wyjątku natychmiast przenosi kontrolę rąk z powrotem do osoby dzwoniącej" ... O ile nie istnieje CATCH do obsługi zgłoszonego błędu na dowolnej ścieżce stosu wywołań. – Mahesh

+5

@Mahesh Nie jestem pewien, co masz na myśli przez "Unless" - dowolny POKÓJ w stosie poniżej, gdzie "rzut" wystąpił jest częścią "dzwoniącego" –

Powiązane problemy