Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| de:modul:m288:learningunits:lu02:01 [2025/09/01 13:04] – vdemir | de:modul:m288:learningunits:lu02:01 [2025/09/09 14:10] (aktuell) – [const] vdemir | ||
|---|---|---|---|
| Zeile 5: | Zeile 5: | ||
| Variablen dienen in JavaScript dazu, Werte zu speichern und wiederzuverwenden. Sie können Zahlen, Texte, Objekte, Funktionen und vieles mehr aufnehmen. | Variablen dienen in JavaScript dazu, Werte zu speichern und wiederzuverwenden. Sie können Zahlen, Texte, Objekte, Funktionen und vieles mehr aufnehmen. | ||
| + | |||
| + | ===== Beispiele ===== | ||
| + | // Beispiele fuer Werte | ||
| + | let n = 42; // Number | ||
| + | let s = " | ||
| + | let ok = true; // Boolean | ||
| + | let list = [1, 2, 3]; | ||
| + | let user = { name: " | ||
| + | |||
| + | ===== Deklaration vs. Zuweisung ===== | ||
| + | * Deklaration: | ||
| + | * Zuweisung: Wert setzen oder aendern (x = 5;) | ||
| + | * Beides gemeinsam ist ueblich: let x = 5; | ||
| + | |||
| ===== Keywords ===== | ===== Keywords ===== | ||
| Zeile 11: | Zeile 25: | ||
| * let | * let | ||
| * const | * const | ||
| + | |||
| + | Das nachfolgende Schaubild veranschaulicht die Gültigkeit von Variablen in JavaScript. | ||
| + | |||
| + | {{: | ||
| ==== var ==== | ==== var ==== | ||
| Zeile 27: | Zeile 45: | ||
| demoVar(); | demoVar(); | ||
| | | ||
| - | {{: | + | {{: |
| Wie in der Abbildung zu sehen ist, ist die Ausgabe der Variable //name// fehlerfrei, obwohl diese ausserhalb des if-Blocks definiert wurde. Der Scope (Gültigkeitsbereich) ist bei var die Funktion. | Wie in der Abbildung zu sehen ist, ist die Ausgabe der Variable //name// fehlerfrei, obwohl diese ausserhalb des if-Blocks definiert wurde. Der Scope (Gültigkeitsbereich) ist bei var die Funktion. | ||
| Zeile 45: | Zeile 63: | ||
| demoLet(); | demoLet(); | ||
| | | ||
| - | {{: | + | {{: |
| Wie in der Ausgabe zu sehen, wird //Markpoint 1:// fehlerfrei ausgegeben, //Markpoint 2:// liefer dann eine Fehlermeldung, | Wie in der Ausgabe zu sehen, wird //Markpoint 1:// fehlerfrei ausgegeben, //Markpoint 2:// liefer dann eine Fehlermeldung, | ||
| - | | + | |
| + | ==== const ==== | ||
| + | **const** gibt es ebenfalls seit ES6. const verhält sich wie let (block-skopiert), | ||
| + | |||
| + | **Wichtig: | ||
| + | |||
| + | **Beispiel 1 - einfache Varible** | ||
| + | |||
| + | const id = " | ||
| + | console.log(" | ||
| + | id = " | ||
| + | console.log(" | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Die Konsolenausgabe bei //Markpoint 1:// zeigt, dass der ursprüngliche Wert der Variable //name// 1234 war. Der Versuch den Inhalt zu überschreiben führt zu einer Fehlermeldung. //Markpoint 2:// zeigt, dass der Inhalt der Variable sich nicht verändert hat. | ||
| + | |||
| + | **Beispiel 2 - Komplexe Variable (Objekt/ | ||
| + | |||
| + | const user = { name: " | ||
| + | | ||
| + | }; | ||
| + | console.log(" | ||
| + | user.name = " | ||
| + | user.vorname = " | ||
| + | console.log(" | ||
| + | user = {name: " | ||
| + | console.log(" | ||
| + | |||
| + | {{: | ||
| + | |||
| + | In der Abbildung ist zu sehen, dass der Versuch das Array neu zu schreiben eine Fehlermeldung herbeiführt. Hingegen kann der Inhalt des Arrays verändert werden. | ||
| + | |||
| + | |||
| + | ==== Lernvideo ==== | ||
| + | {{: | ||
| + | |||
| + | ==== Vergleich ==== | ||
| + | |||
| + | ^ ^Scope ^Redeclare | ||
| + | ^ ^Gültigkeitsbereich ^Neu anlegen ^Werte überschreibbar ^Wird an den Codeanfang gezogen ^this-Notation erlaubt ^ | ||
| + | |var | ||
| + | |let | ||
| + | |const |Yes | ||
| + | |||
| ===== Zusatzmaterial ===== | ===== Zusatzmaterial ===== | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| - | |||
| ---- | ---- | ||