Ich möchte den Chrome-Debugger zwingen, in einer Zeile per Code zu brechen oder eine Art Kommentar-Tag wie so etwas zu verwenden console.break()
.
686
Ich möchte den Chrome-Debugger zwingen, in einer Zeile per Code zu brechen oder eine Art Kommentar-Tag wie so etwas zu verwenden console.break()
.
debugger;
oder nur reguläre Haltepunkte in der Entwickler-Symbolleiste verwendet?Antworten:
Sie können
debugger;
innerhalb Ihres Codes verwenden. Wenn die Entwicklerkonsole geöffnet ist, wird die Ausführung unterbrochen. Es funktioniert auch in Firebug.quelle
setTimeout(function(){debugger;}, 3000);
debugger;
wird auch in allen gängigen Browsern unterstützt. Für weitere Informationen: w3schools.com/jsref/jsref_debugger.aspRichten Sie einen Button-Click-Listener ein und rufen Sie den an
debugger;
Beispiel
Demo
http://jsfiddle.net/hBCH5/
Ressourcen zum Debuggen in JavaScript
quelle
Sie können auch verwenden
debug(function)
, um zu brechen, wennfunction
aufgerufen wird.Befehlszeilen-API-Referenz: Debug
quelle
Wie andere bereits gesagt haben,
debugger;
ist der Weg zu gehen. Ich habe ein kleines Skript geschrieben, das Sie über die Befehlszeile in einem Browser verwenden können, um den Haltepunkt unmittelbar vor dem Funktionsaufruf festzulegen und zu entfernen: http://andrijac.github.io/blog/2014/01/31/javascript-breakpoint/quelle
Wechseln Sie auf der Registerkarte "Skripte" zu Ihrem Code. Klicken Sie links neben der Zeilennummer auf. Dadurch wird ein Haltepunkt festgelegt.
Bildschirmfoto:
Sie können dann Ihre Haltepunkte auf der rechten Registerkarte verfolgen (wie im Screenshot gezeigt).
quelle
debugger
ist ein reserviertes Schlüsselwort von EcmaScript und hat seit ES5 eine optionale SemantikInfolgedessen kann es nicht nur in Chrome, sondern auch in Firefox und Node.js über verwendet werden
node debug myscript.js
.Der Standard sagt :
Keine Änderungen in ES6.
quelle
Es ist möglich und es gibt viele Gründe, warum Sie dies tun möchten. Zum Beispiel das Debuggen einer Javascript-Endlosschleife kurz vor dem Beginn des Ladens der Seite, wodurch verhindert wird, dass das Chrome Developer Toolset (oder der Firebug) korrekt geladen wird.
Siehe Abschnitt 2 von
http://www.laurencegellert.com/2012/05/the-three-ways-of-setting-breakpoints-in-javascript/
Oder fügen Sie Ihrem Code am gewünschten Testpunkt einfach eine Zeile mit dem Wort Debugger hinzu.
quelle
quelle
Sie können auch
debug(functionName)
Debug-Funktionen einstellen .https://developers.google.com/web/tools/chrome-devtools/javascript/breakpoints#function
quelle
Es gibt viele Möglichkeiten, JavaScript-Code zu debuggen. Die folgenden zwei Ansätze werden häufig zum Debuggen von JavaScript über Code verwendet
Verwenden Sie
console.log()
diese Option, um die Werte in der Browserkonsole auszudrucken. (Dies hilft Ihnen, die Werte an bestimmten Stellen Ihres Codes zu verstehen.)Debugger-Schlüsselwort. Fügen Sie
debugger;
die Speicherorte hinzu, die Sie debuggen möchten, öffnen Sie die Entwicklerkonsole des Browsers und navigieren Sie zur Registerkarte Quellen.Weitere Tools und Möglichkeiten zum Debuggen von JavaScript-Code finden Sie unter diesem Link von W3School .
quelle
Ich würde nicht empfehlen,
debugger;
wenn Sie nur den Javascript-Code töten und stoppen möchten, dadebugger;
Ihr Javascript-Code nur vorübergehend eingefroren und nicht dauerhaft gestoppt wird.Wenn Sie Javascript-Code auf Ihren Befehl hin ordnungsgemäß beenden und stoppen möchten, verwenden Sie Folgendes:
throw new Error("This error message appears because I placed it");
quelle