Comment définir un point d’arrêt sur une fonction JS réduite dans Chrome ou Safari?

Je voudrais définir un point d’arrêt dans une fonction “Cart.add” dans les débogueurs Chrome ou Safari JavaScript. Le problème est que cette fonction est définie dans un fichier JS minifié volumineux et n’existe pas sur une seule ligne.

Certains documents indiquent que les débogueurs WebKit prennent en charge les commandes “break” ou “debug” dans la console de débogage, mais que celles-ci ne semblent pas fonctionner dans les nouvelles versions du débogueur.

Définir un point d’arrêt sur cette ligne du fichier JS ne fonctionne pas non plus, car il y a beaucoup de fonctions sur cette ligne.

Aucune suggestion?

Dans Chrome, lorsque vous ouvrez l’onglet Scripts vous pouvez modifier le fichier sélectionné en cliquant sur le bouton { } (“Jolie impression”) en bas. Après cela, vous pouvez trouver votre ligne et définir un point d’arrêt. Le code restra préétabli avec des points d’arrêt en place après une actualisation de la page.

La déclaration du debugger est probablement ce que vous recherchez.

L’évaluation de la production DebuggerStatement peut permettre à une implémentation de provoquer un point d’arrêt lorsqu’elle est exécutée sous un débogueur. Si un débogueur n’est pas présent ou actif, cette instruction n’a aucun effet observable.

La production DebuggerStatement : debugger ; est évalué comme suit:

  1. Si une fonctionnalité de débogage définie par l’implémentation est disponible et activée, alors

    une. Effectuez une action de débogage définie par l’implémentation.

    b. Soit le résultat une valeur d’achèvement définie par l’implémentation.

  2. Autre

    une. Laissez le résultat être (normal, vide, vide).

  3. Résultat du retour

L’instruction break de sortir des boucles et des instructions de switch et n’a rien à voir avec le débogage.

La vraie solution est de ne pas surcharger votre code 🙂

Si vous avez enregistré la page Web, embellissez votre fichier js à l’aide de jsbeautifier.org, qui formate l’intégralité de votre script. Remplacez ensuite votre contenu js par la version embellie. De là, vous pouvez facilement déboguer votre JS