Estou usando o TypeScript para um projeto razoavelmente grande e estou me perguntando qual é o padrão para o uso de Error
s. Por exemplo, digamos que eu entregue uma exceção de índice fora dos limites em Java:
throw new IndexOutOfBoundsException();
A instrução equivalente no TypeScript seria:
throw new Error("Index Out of Bounds");
De que outras maneiras eu poderia conseguir isso? Qual é o padrão aceito?
fonte
RangeError
. Você deve definir tipos personalizados ou apenasthrow new Error("<message>");
?A convenção para fora do intervalo no JavaScript está em uso
RangeError
. Para verificar o tipo, use if / else +instanceof
começando do mais específico para o mais genéricofonte
else { throw; }
aquiSolução simples para emitir e mostrar mensagem por exceção.
Cuidado
Acima não é uma solução se não soubermos que tipo de erro pode ser emitido do bloco. Nesses casos, devem ser utilizados protetores de tipo e o tratamento adequado para erros apropriados - consulte a resposta do @Moriarty.
fonte
<Error>
é dizer ao compilador TS quee
aqui é do tipo<Error>
para que você tenha (1) intellisense e (2) melhor verificação de tipo. Esteja ciente de que qualquer conversão não se traduz em JS e é um açúcar puramente sintático.Não se esqueça das instruções do switch:
default
.instanceof
pode corresponder na superclasse.constructor
corresponderá na classe exata.fonte