Je veux écrire une commune gestionnaire d'erreur qui va attraper les erreurs personnalisées jeté sur le but à n'importe quelle instance du code.
Quand j'ai fait throw new Error('sample')
comme dans le code suivant
<script>
try{
throw new Error({'hehe':'haha'})
//throw new Error('hehe');
}catch(e)
{
alert(e)
console.log(e);
}
</script>
Journal affiche: dans firefox Error: [object Object]
et je n'arrivais pas à analyser l'objet.
Pour la deuxième jeter le journal indique que: Error: hehe
Alors que quand je l'ai fait
<script>
try{
throw ({'hehe':'haha'})
}catch(e)
{
alert(e)
console.log(e);
}
</script>
la console a montré que: Object { hehe="haha"}
en qui j'ai été en mesure d'accéder à l'erreur propriétés.
Quelle est la différence?
Est la différence comme on le voit dans le code? comme la chaîne de caractères sera juste passé en tant que chaîne et de l'objet en tant qu'objets, mais la syntaxe sera différent?
Je n'ai pas exploré jeter objet d'erreur... j'avais fait seulement jeter des cordes.
Est-il un autre moyen que les deux ci-dessus mentionné méthodes?
Vos suggestions s'il vous plaît.