- 1
- 2
- 3
- 4
- 5
try {
return JSON.parse(this.responseText)
} catch (e) {
throw e
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+173
try {
return JSON.parse(this.responseText)
} catch (e) {
throw e
}
паттерн "поддержка исключений" - если исключение всплывает - нужно его подтолкнуть, чтобы не потонуло х)
Без контекста не такой уж и говнокод
К тому же, http://code.google.com/intl/ru/query/#q=rethrow
Короче говоря, абстракция и всего-то.
Кстати неоднократно видел как в жабе пишут такое вот
try{
...
}catch(Exception e){
throw new RuntimeException(e);
}
>во-вторых, RuntimeException не требует обьявления в throws.
спасибо кеп.
И обычно лучше бросать не RuntimeException, а производное исключение, специфичное для приложения, чтобы иметь возможность поймать его отдельно. Но если всё, что нужно -- просто поймать и продиагностировать ошибку, то сойдёт.
Ну, обычно не всё так просто, как показано в #5897, потому и написал я первый раз, что без контекста не очень ясно.
Ну или, если забыть, что это javascript, если у нас используются какие-то ресурсы/соединения, их тоже нужно закрыть, а функция в return'е это и будет делать.
В общем, если будут у меня когда-то реальные примеры — я допишу :)