Skip to content

Commit b51273b

Browse files
author
Jonas
committed
Finish translation of debuggin chrome
1-js/03-code-quality/01-debugging-chrome/article.md
1 parent 47e6a0a commit b51273b

File tree

1 file changed

+67
-67
lines changed
  • 1-js/03-code-quality/01-debugging-chrome

1 file changed

+67
-67
lines changed

1-js/03-code-quality/01-debugging-chrome/article.md

+67-67
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Bevor wir komplexeren Code schreiben, lass uns über Debuggen sprechen.
44

55
Alle modernen Browser und die meisten anderen Umgebungen unterstützen "debuggen" -- eine spezielle UI in den Entwicklerwerkzeugen, welches es einfacher macht Fehler zu finden und zu beheben.
66

7-
Wir werden hier Chrome verwenden, da es wahrscheinlich das Funktionsreichste in diesem Bereich ist.
7+
Wir werden hier Chrome verwenden, da er wahrscheinlich das Funktionsreichste in diesem Bereich ist.
88

99
## Der "sources" Bereich
1010

@@ -34,150 +34,150 @@ Jetzt können Sie auf die selbe Schaltfläche <span class="devtools" style="back
3434

3535
## Console
3636

37-
If we press `Esc`, then a console opens below. We can type commands there and press `key:Enter` to execute.
37+
Wenn wir `Esc` drücken, dann öffnet sich darunter eine Console. Wir können dort Befehle eingeben und mit `key:Enter` ausführen.
3838

39-
After a statement is executed, its result is shown below.
39+
Nachdem eine Anweisung ausgeführt wurde, wird das Ergebnis darunter angezeigt.
4040

41-
For example, here `1+2` results in `3`, and `hello("debugger")` returns nothing, so the result is `undefined`:
41+
Als Beispiel, hier `1+2` ergibt `3`, und `hello("debugger")` liefert nichts, sodass das Ergebnis `undefined` ist:
4242

4343
![](chrome-sources-console.png)
4444

4545
## Breakpoints
4646

47-
Let's examine what's going on within the code of the [example page](debugging/index.html). In `hello.js`, click at line number `4`. Yes, right on the `4` digit, not on the code.
47+
Lassen Sie uns untersuchen, was innerhalb des Codes der [Beispielseite](debugging/index.html) vor sich geht.. In `hello.js`, klicke auf die Zeilennummer `4`. Ja, direkt auf die Zahl `4`, nicht im Code.
4848

49-
Congratulations! You've set a breakpoint. Please also click on the number for line `8`.
49+
Herzlichen Glückwunsch! Sie haben einen Breakpoint gesetzt. Bitte klicken sie auch auf die Nummer für Zeile `8`.
5050

51-
It should look like this (blue is where you should click):
51+
Es sollte wie folgt aussehen (Blau markiert an welcher stelle sie klicken sollen):
5252

5353
![](chrome-sources-breakpoint.png)
5454

55-
A *breakpoint* is a point of code where the debugger will automatically pause the JavaScript execution.
55+
Ein*breakpoint* ist ein Punkt im Code an der der Debugger automatisch anhalten wird, während der JavaScript ausführung.
5656

57-
While the code is paused, we can examine current variables, execute commands in the console etc. In other words, we can debug it.
57+
Währen der Code angehalten ist können wir die aktuellen Variablen untersuchen, ausführen Befehle in der Console etc. In anderen Worten, wir können es debuggen.
5858

59-
We can always find a list of breakpoints in the right pane. That's useful when we have many breakpoints in various files. It allows to:
60-
- Quickly jump to the breakpoint in the code (by clicking on it in the right pane).
61-
- Temporarily disable the breakpoint by unchecking it.
62-
- Remove the breakpoint by right-clicking and selecting Remove.
63-
- ...And so on.
59+
Wir können immer eine Liste von Breakpoints im rechten Bereich finden. Dies ist nützlich, wenn wir viele Breakpoints in verschiedenen Dateien haben. Das erlaubt uns:
60+
- Schnell zu einem Breakpoint im Code zu springen (durch klicken auf ihn im rechten Bereich).
61+
- Temporär einen Breakpoint auszuschalten indem wir in abwählen.
62+
- Den Breakpoint zu entfernen durch rechts klicken und entfernen auswählen .
63+
- ...Und so weiter.
6464

6565
```smart header="Conditional breakpoints"
66-
*Right click* on the line number allows to create a *conditional* breakpoint. It only triggers when the given expression is truthy.
66+
*Rechts-Klick* auf die Zeilennummer erlaubt es uns ein *bedingten* Breakpoint. Er wird nur ausgelöst wenn der gegebene Ausdruck wahr ist.
6767
68-
That's handy when we need to stop only for a certain variable value or for certain function parameters.
68+
Das ist praktisch, wenn wir nur für einen bestimmten Variablenwert oder für bestimmte Funktionsparameter anhalten müssen.
6969
```
7070

71-
## Debugger command
71+
## Debugger Befehl
7272

73-
We can also pause the code by using the `debugger` command, like this:
73+
Wir können auch den Code anhalten durch das nutzen des `debugger` Befehles, so wie hier:
7474

7575
```js
7676
function hello(name) {
7777
let phrase = `Hello, ${name}!`;
7878

7979
*!*
80-
debugger; // <-- the debugger stops here
80+
debugger; // <-- der Debugger hält hier an
8181
*/!*
8282

8383
say(phrase);
8484
}
8585
```
8686

87-
That's very convenient when we are in a code editor and don't want to switch to the browser and look up the script in developer tools to set the breakpoint.
87+
Das ist sehr praktisch, wenn wir uns in einem Code-Editor befinden und nicht zum Browser wechseln und das Script in den Entwicklertools nachschlagen wollen, um den Haltepunkt zu setzen.
8888

8989

90-
## Pause and look around
90+
## Pause und umhersehen
9191

92-
In our example, `hello()` is called during the page load, so the easiest way to activate the debugger is to reload the page. So let's press `key:F5` (Windows, Linux) or `key:Cmd+R` (Mac).
92+
In unserem Beispiel, `hello()` wir währen des Seitenladens aufgerufen, so das der einfachste Weg ist um den Debugger zu aktivieren, das Neuladen der Seite ist. Also lass uns `key:F5` drücken (Windows, Linux) oder `key:Cmd+R` (Mac).
9393

94-
As the breakpoint is set, the execution pauses at the 4th line:
94+
Ist der Breakpoint gesetzt, hält die Ausführung in der 4 Zeile an:
9595

9696
![](chrome-sources-debugger-pause.png)
9797

98-
Please open the informational dropdowns to the right (labeled with arrows). They allow you to examine the current code state:
98+
Bitte öffne die Dropdown-Listen für Informationen auf der rechten Seite (markiert mit Pfeilen). Diese erlaubt Ihnen den aktuellen Code-Zustand zu untersuchen:
9999

100-
1. **`Watch` -- shows current values for any expressions.**
100+
1. **`Watch` -- zeigt aktuelle Werte für beliebige Ausdrücke an.**
101101

102-
You can click the plus `+` and input an expression. The debugger will show its value at any moment, automatically recalculating it in the process of execution.
102+
Sie können das Plus anklicken `+`und einen Ausdruck eingeben. Der Debugger wird den Wert zu jedem Moment anzeigen, er wird automatisch neu berechnet während die Ausführung läuft.
103103

104-
2. **`Call Stack` -- shows the nested calls chain.**
104+
2. **`Call Stack` -- zeigt die verschachtelte Aufrufkette an.**
105105

106-
At the current moment the debugger is inside `hello()` call, called by a script in `index.html` (no function there, so it's called "anonymous").
106+
Im aktuellen Moment ist der Debugger im `hello()` aufruf, aufgerufen durch ein Script in `index.html` (hier ist keine Funktion, daher wird es "anonym" aufgerufen).
107107

108-
If you click on a stack item, the debugger jumps to the corresponding code, and all its variables can be examined as well.
109-
3. **`Scope` -- current variables.**
108+
Wenn Sie auf ein Stack Item klicken, springt der Debugger zum zugehörigen Code, und alle seine Variablen können ebenfalls untersucht werden.
109+
3. **`Scope` -- aktuelle Variablen.**
110110

111-
`Local` shows local function variables. You can also see their values highlighted right over the source.
111+
`Local` zeigt lokale funktions Variablen. Sie können ihre Werte auch direkt über dem Code hervorgehoben sehen .
112112

113-
`Global` has global variables (out of any functions).
113+
`Global` hat globale Variablen (außerhalb von allen Funktionen).
114114

115-
There's also `this` keyword there that we didn't study yet, but we'll do that soon.
115+
Dort ist auch das `this` Schlüsselwort, welches wir bisher nicht kennengelernt haben, aber das werden wir bald tun.
116116

117-
## Tracing the execution
117+
## Verfolgung der Ausführung
118118

119-
Now it's time to *trace* the script.
119+
Nun ist es an der Zeit, das Skript zu verfolgen (*trace*).
120120

121-
There are buttons for it at the top of the right pane. Let's engage them.
121+
Hierfür gibt es Schaltflächen im oberen rechten Bereich. Nehmen wir diese ins Visier.
122122

123-
<span class="devtools" style="background-position:-7px -76px"></span> -- continue the execution, hotkey `key:F8`.
124-
: Resumes the execution. If there are no additional breakpoints, then the execution just continues and the debugger loses control.
123+
<span class="devtools" style="background-position:-7px -76px"></span> -- die Ausführung weiter fortsetzen, Kurztaste `key:F8`.
124+
: Setzt die Ausführung fort. Gibt es keine weiteren Breakpoints, wird die Ausführung einfach fortgesetzt und der Debugger verliert die Kontrolle.
125125

126-
Here's what we can see after a click on it:
126+
Hier ist, was wir nach einem Klick darauf sehen können:
127127

128-
![](chrome-sources-debugger-trace-1.png)
128+
![](chrome-sources-debugger-trace-1.png)
129129

130-
The execution has resumed, reached another breakpoint inside `say()` and paused there. Take a look at the "Call stack" at the right. It has increased by one more call. We're inside `say()` now.
130+
Die Ausführung wurde fortgesetzt, erreicht einen anderen Breakpoint innerhalb von `say()` und hält dort an. Werfen Sie einen Blick auf den "Call stack" auf der rechten Seite. Es hat sich um einen weiteren Anruf erhöht. Wir sind nun innerhalb von `say()`.
131131

132-
<span class="devtools" style="background-position:-137px -76px"></span> -- make a step (run the next command), but *don't go into the function*, hotkey `key:F10`.
133-
: If we click it now, `alert` will be shown. The important thing is that `alert` can be any function, the execution "steps over it", skipping the function internals.
132+
<span class="devtools" style="background-position:-137px -76px"></span> -- einen Schritt tun (den nächsten Befehl ausführen), aber *nicht in die Funktion hinein gehen*, Kurztaste `key:F10`.
133+
: Wenn wir es jetzt anklicken, ein `alert` wird angezeigt. Das Wichtige dabei ist `alert` kann jede Funktion sein, die Ausführung "geht darüber hinweg", es überspringt den Funktionsinhalt.
134134

135-
<span class="devtools" style="background-position:-72px -76px"></span> -- make a step, hotkey `key:F11`.
136-
: The same as the previous one, but "steps into" nested functions. Clicking this will step through all script actions one by one.
135+
<span class="devtools" style="background-position:-72px -76px"></span> -- einen Schritt tun, Kurztaste `key:F11`.
136+
: Wie der Vorherige, allerdings "hineingehen" in geschachtelte Funktionen . Wenn Sie darauf klicken, werden alle Skript-Aktionen nacheinander ausgeführt.
137137

138-
<span class="devtools" style="background-position:-104px -76px"></span> -- continue the execution till the end of the current function, hotkey `key:Shift+F11`.
139-
: The execution would stop at the very last line of the current function. That's handy when we accidentally entered a nested call using <span class="devtools" style="background-position:-72px -76px"></span>, but it does not interest us, and we want to continue to its end as soon as possible.
138+
<span class="devtools" style="background-position:-104px -76px"></span> -- fortsetzen der Ausführung bis zum Ende der aktuellen Funktion, Kurztaste `key:Shift+F11`.
139+
: Die Ausführung stoppt an der aller letzten Zeile der aktuellen Funktion. Dies ist nett wenn man ausversehen eine verschachtelte Funktion aufgerufen hat <span class="devtools" style="background-position:-72px -76px"></span>, diese interessiert uns aber nicht, und wir wollen diese so schnell wie möglich wieder verlassen.
140140

141-
<span class="devtools" style="background-position:-7px -28px"></span> -- enable/disable all breakpoints.
142-
: That button does not move the execution. Just a mass on/off for breakpoints.
141+
<span class="devtools" style="background-position:-7px -28px"></span> -- aktivieren/deaktivieren aller Breakpoints.
142+
: Diese Schaltfläche bewegt die Ausführung nicht. Sie aktiviert/deaktiviert nur alle Breakpoints.
143143

144-
<span class="devtools" style="background-position:-264px -4px"></span> -- enable/disable automatic pause in case of an error.
145-
: When enabled, and the developer tools is open, a script error automatically pauses the execution. Then we can analyze variables to see what went wrong. So if our script dies with an error, we can open debugger, enable this option and reload the page to see where it dies and what's the context at that moment.
144+
<span class="devtools" style="background-position:-264px -4px"></span> -- aktivieren/deaktivieren der automatischen Pause im Falle eines Fehlers.
145+
: Ist dies aktiviert,und die Entwicklerwerkzeuge sind offen, ein Script Fehler führt zu einem automatischen Anhalten der Ausführung. Dann können wir die Variablen analysieren um zu sehen was falsch lief. Das heißt wenn unser Script mit einem Fehler stirbt, können wir den Debugger öffnen, diese Option aktivieren und die Seite neuladen um zu sehen an welcher Stelle es stirbt und was der Kontext an dieser Stelle ist..
146146

147147
```smart header="Continue to here"
148-
Right click on a line of code opens the context menu with a great option called "Continue to here".
148+
Rechtsklick auf die Zeile öffnet das Kontext Menu mit einer großartigen Option mit dem Namen: "Continue to here".
149149
150-
That's handy when we want to move multiple steps forward, but we're too lazy to set a breakpoint.
150+
Dies ist Nützlich wenn wir mehrere Schritte vorwärts wollen, aber wir zu faul sind um Breakpoints zu setzten.
151151
```
152152

153153
## Logging
154154

155-
To output something to console, there's `console.log` function.
155+
Um irgendetwas in der Console anzuzeigen , gibt es die `console.log` Funktion.
156156

157-
For instance, this outputs values from `0` to `4` to console:
157+
Zum Beispiel gibt dies Werte von `0` bis `4` in der Console aus:
158158

159159
```js run
160-
// open console to see
160+
// öffne die Console um es zu sehen
161161
for (let i = 0; i < 5; i++) {
162162
console.log("value", i);
163163
}
164164
```
165165

166-
Regular users don't see that output, it is in the console. To see it, either open the Console tab of developer tools or press `key:Esc` while in another tab: that opens the console at the bottom.
166+
Normalerweise sieht der Nutzer diese Ausgabe nicht, er ist in der Console. Um ihn zu sehen, öffne entweder den Console Bereich in den Entwicklerwerkzeugen oder drücke `key:Esc` während Sie sich in einer anderen Registerkarte befinden: dies öffnet die Console an der Unterseite.
167167

168-
If we have enough logging in our code, then we can see what's going on from the records, without the debugger.
168+
Wenn wir genügend Logging in unserem Code haben, dann können wir sehen, was in den Datensätzen vor sich geht, ohne den Debugger..
169169

170-
## Summary
170+
## Übersicht
171171

172-
As we can see, there are three main ways to pause a script:
173-
1. A breakpoint.
174-
2. The `debugger` statements.
175-
3. An error (if dev tools are open and the button <span class="devtools" style="background-position:-264px -4px"></span> is "on")
172+
Wie wir sehen können, gibt es drei Hauptmöglichkeiten ein Script zu unterbrechen:
173+
1. Ein breakpoint.
174+
2. Das `debugger` Statement.
175+
3. Ein Fehler (wenn die Entwicklerwerkzeuge geöffnet sind und die Schaltfläche <span class="devtools" style="background-position:-264px -4px"></span> auf "on" ist)
176176

177-
Then we can examine variables and step on to see where the execution goes wrong.
177+
Dann können wir Variablen untersuchen und weitermachen, um zu sehen , wo die Ausführung falsch läuft.
178178

179-
There are many more options in developer tools than covered here. The full manual is at <https://developers.google.com/web/tools/chrome-devtools>.
179+
Es gibt noch viel mehr Möglichkeiten in den Entwicklerwerkzeugen als hier beschrieben sind. Das vollständige Handbuch finden Sie unter <https://developers.google.com/web/tools/chrome-devtools>.
180180

181-
The information from this chapter is enough to begin debugging, but later, especially if you do a lot of browser stuff, please go there and look through more advanced capabilities of developer tools.
181+
Die Informationen aus diesem Kapitel reichen aus, um mit dem Debuggen zu beginnen, aber später, besonders wenn Sie viel Browserarbeit leisten, gehen Sie bitte dorthin und schauen Sie sich die erweiterten Funktionen der Entwicklerwerkzeuge an.
182182

183-
Oh, and also you can click at various places of dev tools and just see what's showing up. That's probably the fastest route to learn dev tools. Don't forget about the right click as well!
183+
Oh, und auch Sie können an verschiedenen Stellen der Entwicklungswerkzeuge klicken und einfach sehen, was angezeigt wird. Das ist wahrscheinlich der schnellste Weg, um Entwicklungswerkzeuge zu erlernen. Vergiss auch den Rechtsklick nicht!

0 commit comments

Comments
 (0)