Tipos de erro
Erros acontecem em todo código JavaScript. Saber distinguir entre TypeError, ReferenceError e RangeError permite depurar e tratar cada situação corretamente — por exemplo, um TypeError indica que você usou um valor de forma incompatível, enquanto um ReferenceError sinaliza uma variável que não existe. Com try/catch você pode capturar esses erros e reagir de maneira controlada.
O PROBLEMA
Demonstre TypeError, ReferenceError e RangeError. Use try/catch para capturar cada um.
EXEMPLO
try { null.nome } catch(e) { console.log(e.constructor.name) } → TypeError
try { varInexistente } catch(e) { console.log(e.constructor.name) } → ReferenceErrorSOBRE O CONCEITO
JavaScript possui construtores de erro nativos. TypeError ocorre quando uma operação não pode ser executada por incompatibilidade de tipo — por exemplo, acessar uma propriedade de null. ReferenceError surge ao tentar usar uma variável não declarada. RangeError acontece quando um valor numérico está fora do intervalo permitido, como em Array(-1). Use try/catch para envolver o código que pode falhar e, no catch, acesse e.constructor.name para identificar o tipo exato. Um erro comum é confundir os tipos de erro ou usar e.message; prefira constructor.name para obter o nome da classe do erro.
RESOLUÇÃO