Maison > interface Web > js tutoriel > Comment obtenir des traces de pile JavaScript pour les exceptions personnalisées ?

Comment obtenir des traces de pile JavaScript pour les exceptions personnalisées ?

DDD
Libérer: 2024-10-17 22:30:03
original
1046 Les gens l'ont consulté

How Can JavaScript Stack Traces Be Obtained for Custom Exceptions?

Comment obtenir une trace de pile JavaScript pour les exceptions personnalisées

Lors du lancement d'exceptions JavaScript personnalisées (par exemple, lancez "AArrggg"), l'accès à un la trace de la pile (via Firebug ou d'autres outils) ne peut révéler que le message d'exception. Cet article présente des solutions pour obtenir des traces de pile complètes, même pour des exceptions personnalisées.

Solution de navigateur moderne :

Dans les navigateurs modernes, vous pouvez facilement accéder à la trace de pile avec la console .trace().

Propriété Stack d'erreur :

Pour une solution plus propre et plus simple, vous pouvez utiliser la propriété stack d'un objet Error :

<code class="js">function stackTrace() {
    var err = new Error();
    return err.stack;
}</code>
Copier après la connexion

Cette approche fournit une trace de pile détaillée, y compris les fonctions d'appel, les chemins de fichiers et les numéros de ligne.

Fonction de trace de pile personnalisée :

Pour une utilisation plus personnalisée fonctionnalité de trace de pile, pensez à utiliser le script suivant :

<code class="js">function stacktrace() { 
  function st2(f) {
    return !f ? [] : 
        st2(f.caller).concat([f.toString().split('(')[0].substring(9) + '(' + f.arguments.join(',') + ')']);
  }
  return st2(arguments.callee.caller);
}</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal