new DetailedError(error [, solution] [, details] [, code])
Classe de erro com mais detalhes que a nativa Error
. Ela permite indicar para o usuário
uma possível solução para o erro e separa os detalhes técnicos da mensagem a ser exibida para
o usuário.
Em versões antigas do sistema, o quarto parâmetro deste construtor (atualmente o code
)
recebia a localização do erro e depois passou a aceitar um código numérico do erro,
guardado na propriedade errorCode
. Por motivos de compatibilidade, códigos que contenham
os caracteres ".", "(", "/" e " " (espaço) serão interpretados como uma localização do
erro em vez de um código de erro, sendo atribuídos à propriedade sourceLocation
em vez
code
. Devido a esse tratamento especial, esses caracteres não podem ser utilizados
em códigos de erro. Esse tratamento de compatibilidade será removido em versões futuras
do sistema, portanto é recomendado que códigos que informem uma localização do erro
sejam revistos para deixar de informar esse parâmetro.
Esta classe também é publicada pelo Engine por meio da variável global DetailedError.
Parameters:
Name | Type | Argument | Description |
---|---|---|---|
error |
string | Mensagem de erro a ser exibida para o usuário. |
|
solution |
string |
<optional> |
Procedimento que o usuário deverá realizar para que o erro não seja produzido novamente. |
details |
string |
<optional> |
Detalhes técnicos do erro. Detalhes que sejam de interesse exclusivo de desenvolvedores devem ser preferencialmente informados por este parâmetro em vez da mensagem de erro. |
code |
string | number |
<optional> |
Código que identifica o erro, permitindo que ele possa ser testado e tratado sem a inspeção da mensagem de erro. |
Extends
- Error
Members
-
code :string|number
-
Código que identifica o erro, permitindo que ele possa ser testado e tratado sem a inspeção da mensagem de erro.
É recomendado que os códigos de erro sejam textuais e possuam algum prefixo que identifique a origem do erro, evitando que classes ou módulos distintos utilizem o mesmo código para erros de natureza distinta.
Type:
- string | number
Example
if (err.code == 'ERR_CRYPTO_INVALID_IV') { }
-
details :string
-
Detalhes técnicos do erro. Detalhes que sejam de interesse exclusivo de desenvolvedores devem ser preferencialmente informados nesta propriedade em vez da #error.
Type:
- string
-
error :string
-
Mensagem de erro a ser exibida para o usuário.
Type:
- string
-
errorCode :string|number
-
Código que identifica o erro. Propriedade mantida apenas para fins de compatibilidade. Em seu lugar, utilize a propriedade
code
.Type:
- string | number
- Deprecated:
-
- Utilize a propriedade `error`.
- See:
-
solution :string
-
Procedimento que o usuário deverá realizar para que o erro não seja produzido novamente.
Type:
- string
-
sourceLocation :string
-
Local onde o erro foi gerado, relevante apenas para indicar a localização interna dos erros lançados pelo Engine.
Esta propriedade não deve ser utilizada em códigos JavaScript, pois a pilha do erro já indica a localização de forma mais confiável. Ela antes poderia ser informada no quarto parâmetro do construtor, mas foi substituída pelo código do erro no construtor atual desta classe.
Type:
- string