Ich kenne die diesbezüglichen Beschreibungen aus JS-Büchern und
zahllosen Webseiten, aber ich habe das Gefühl, die haben alle nur von
einander abgeschrieben und ich verstehe den Unterschied nicht wirklich.
Der Unterschied soll in der Verfügbarkeit als globale und lokale
Variable liegen. Ich weiss, was der Unterschied zwischen global und
lokal ist, darüber müssen wir nicht diskutieren. Aber wenn ich einen
praktischen Test mache, kann ich bei der Verwendung von var und let
keinerlei Unterschied entdecken. Wo ist das Detail, das ich übersehe?
1 | <script>
|
2 | var a = 1;
|
3 | let b = 2;
|
4 |
|
5 | function foo()
|
6 | {
|
7 | var c = 3;
|
8 | let d = 4;
|
9 | }
|
10 |
|
11 | ...
|
12 |
|
13 | </script>
|
Ich kann also a und b sowohl zwischen den script-tags (also global)
problemlos benutzen, als auch in der Funktion. Und c und d existieren
lokal nur innerhalb der Funktion ... wo ist jetzt der Unterschied, ob
ich die Variablen mit var oder let deklariere?