// Нехорошо:
try {
// ...
} catch(e) {
if (! e instanceof MyError) {
throw e;
}
// ...
}
// Хорошо:
try {
// ...
} catch(e if e instanceof MyError) {
// ...
}
По-моему это ведь одно и тоже, только во втором случае используется нестандартный синтаксис.
Ничем не отличаются, кроме того, что второй способ не будет работать во всех браузерах и средах. Вот что по этому поводу говорит MDN:
Эта возможность не является стандартной и стандартизировать её пока никто не собирается. Не используйте её на сайтах, смотрящих во внешний мир: она будет работать не у всех пользователей. Также могут присутствовать большие несовместимости между реализациями и её поведение может в будущем измениться.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости