{"id":2970,"date":"2018-11-24T17:22:26","date_gmt":"2018-11-24T17:22:26","guid":{"rendered":"https:\/\/blog.ecotronics.ch\/wordpress\/?p=2970"},"modified":"2018-11-24T17:22:26","modified_gmt":"2018-11-24T17:22:26","slug":"javascript-debuggen-in-chrome","status":"publish","type":"post","link":"https:\/\/blog.ecotronics.ch\/wordpress\/?p=2970","title":{"rendered":"JavaScript debuggen in Chrome"},"content":{"rendered":"<p>Generelles Vorgehen:<\/p>\n<ol>\n<li>Zu debuggende Seite \u00f6ffnen<\/li>\n<li>Chrome Entwickler Tools \u00f6ffnen mit <strong>Ctrl + Shift + I<\/strong><\/li>\n<li>Sources-Tab anklicken -&gt; es \u00f6ffnet sich der JavaScript Debugger mit 3 Fenstern: Quellcodeverwaltung, Editor und Debugging Fenster<\/li>\n<li>Gew\u00fcnschtes JavaScript-File \u00f6ffnen und Breakpoint setzen oder wenn man nicht genau weiss, wo sich der zu debuggende Code befindet, im Debugging Fenster &#8220;Event Listener Breakpoints&#8221; \u00f6ffnen und einen Breakpoint f\u00fcr Mous e- Click setzen<\/li>\n<li>Aktionen ausf\u00fchren, die zum Start des JavaScripts f\u00fchren und dann mit dem Icon &#8220;Step over next function call&#8221; Schritt f\u00fcr Schritt durch den Code gehen<\/li>\n<li>Evtl. mit Watch Variablen \u00fcberwachen oder einfach mit Maus auf die entsprechenden Variablen fahren, dann wird der Wert angezeigte.<\/li>\n<li>Besonders n\u00fctzlich f\u00fcr die Fehlersuche ist die Stop-Schaltfl\u00e4che ganz rechts &#8220;Pause on exception&#8221;<\/li>\n<\/ol>\n<div id=\"attachment_2980\" style=\"width: 559px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/11\/ChromeJavaScriptDebugging-e1543079956234.png\"><img aria-describedby=\"caption-attachment-2980\" decoding=\"async\" loading=\"lazy\" class=\"size-full wp-image-2980\" src=\"https:\/\/blog.ecotronics.ch\/wordpress\/wp-content\/uploads\/2018\/11\/ChromeJavaScriptDebugging-e1543079956234.png\" alt=\"JavaScript debuggen in Chrome\" width=\"549\" height=\"600\" \/><\/a><p id=\"caption-attachment-2980\" class=\"wp-caption-text\">JavaScript debuggen in Chrome<\/p><\/div>\n<p>JavaScript-Code in Seite debuggen:<\/p>\n<p>Code direkt in einer Seite wird zur Zeit (Version 70) bei den Event-Handlern nicht automatisch gefunden und angezeigt, deshalb muss man die Seite in der Quellcodeverwaltung explizit \u00f6ffnen, die zu debuggenden Methoden suchen und den Breakpoint explizit setzen.<\/p>\n<p>Tipps und Tricks:<\/p>\n<ul>\n<li>Den Typ einer Variablen kann man ansehen, indem man einen Watch mit folgendem Inhalt eingibt:<br \/>\n<strong>typeof<\/strong> meinvariablenname<\/li>\n<li>Der Tab <strong>Console<\/strong> ist auch ein <strong>Direktfenster<\/strong>, in dem sich Code eintippen und ausf\u00fchren l\u00e4sst<\/li>\n<li>Mit dem Icon &#8220;Deactivate Breakpoints&#8221; lassen sich die Haltepunkte aus- oder einschalten<\/li>\n<li>Im <strong>Editor<\/strong> kann man <strong>direkt Korrekturen<\/strong> machen und sie mit <strong>Ctrl+S<\/strong> speichern, um die korrigierte Version zu testen. Beim n\u00e4chsten Reload der Seite verliert man die Korrektur wieder, deshalb vorher wegkopieren. Mit einem <strong>Rechtsklick in den Editor<\/strong> und &#8220;<strong>Local Modifications<\/strong>&#8221; l\u00e4sst sich anschliessend anzeigen, was ge\u00e4ndert wurde!<\/li>\n<\/ul>\n<p>Quellen:<\/p>\n<ul>\n<li><a href=\"https:\/\/developers.google.com\/web\/tools\/chrome-devtools\/javascript\/\" target=\"_blank\">https:\/\/developers.google.com\/web\/tools\/chrome-devtools\/javascript\/<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Generelles Vorgehen:<\/p>\n<p> Zu debuggende Seite \u00f6ffnen Chrome Entwickler Tools \u00f6ffnen mit Ctrl + Shift + I Sources-Tab anklicken -&gt; es \u00f6ffnet sich der JavaScript Debugger mit 3 Fenstern: Quellcodeverwaltung, Editor und Debugging Fenster Gew\u00fcnschtes JavaScript-File \u00f6ffnen und Breakpoint setzen oder wenn man nicht genau weiss, wo sich der zu debuggende Code befindet, im Debugging Fenster [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":2980,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[34],"tags":[344,345,346,290],"_links":{"self":[{"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2970"}],"collection":[{"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2970"}],"version-history":[{"count":11,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2970\/revisions"}],"predecessor-version":[{"id":2982,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2970\/revisions\/2982"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=\/wp\/v2\/media\/2980"}],"wp:attachment":[{"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2970"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2970"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ecotronics.ch\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2970"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}