⊗jsPmCdScp 134 of 505 menu

Variablensichtbarkeit in if-else in JavaScript

Der Einfachheit halber nehmen wir eine Bedingung, die immer wahr ist:

if (true) { }

Betrachten wir den folgenden Code:

if (true) { let res = '!'; } console.log(res);

Wie Sie sehen, sollte in die Variable res der Wert '!' geschrieben werden. Wenn Sie diesen Code jedoch ausführen, erscheint ein Fehler in der Konsole!

Der Grund liegt darin, dass Variablen, die innerhalb der geschweiften Klammern deklariert werden, nur innerhalb dieser Klammern sichtbar sind und außerhalb nicht. Wissenschaftlich gesprochen geht es hier um die Sichtbarkeit von Variablen.

Man kann sagen, dass der Sichtbarkeitsbereich von Variablen, die innerhalb geschweifter Klammern deklariert werden, nur diese geschweiften Klammern sind. Wenn eine Variable jedoch außerhalb der geschweiften Klammern deklariert wird, ist sie sowohl innerhalb als auch außerhalb sichtbar:

let res; // Variable wurde außen deklariert if (true) { res = '!'; } console.log(res); // gibt '!' aus

Im folgenden Beispiel wird in die Variable res je nach Bedingung entweder der Wert 1 oder der Wert 2 geschrieben:

let num = 5; if (num >= 0) { let res = 1; } else { let res = 2; } console.log(res);

Wenn Sie diesen Code jedoch ausführen, erscheint ein Fehler in der Konsole. Wie Sie nun verstehen, liegt es an der Sichtbarkeit der Variablen. Um das Problem zu lösen, deklarieren wir die Variable außerhalb der Bedingung:

let test = true; let res; // Variable außerhalb der Bedingung deklarieren if (test) { res = 1; } else { res = 2; } console.log(res); // gibt 1 aus

Der Autor des unten angegebenen Codes wollte eine Altersprüfung auf Erreichen des 18. Lebensjahrs durchführen. Der Code funktioniert allerdings nicht. Korrigieren Sie den Fehler des Code-Autors. Hier ist der problematische Code:

let age = 17; if (age >= 18) { let adult = true; } else { let adult = false; } console.log(adult);
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen