⊗jsPmCdScpN 135 of 505 menu

Nuancen des Geltungsbereichs von Variablen in if-else-Konstrukten in JavaScript

Der Geltungsbereich von Variablen weist eine gewisse Nuance auf. Lassen Sie uns diese an einem Beispiel betrachten. Lassen Sie uns außerhalb unserer Bedingung eine Variable res mit einem Wert deklarieren und innerhalb der Bedingung diesen Wert auf einen anderen ändern:

let res = 1; if (true) { res = 2; } console.log(res); // gibt 2 aus

Wie Sie sehen, hat sich die Variable res innerhalb der Bedingung geändert. Alles ändert sich jedoch, wenn innerhalb der Bedingung die Variable res auch via let deklariert wird:

let res = 1; if (true) { let res = 2; // Variable via let deklarieren } console.log(res); // gibt 1 aus, nicht 2!

Hier liegt es daran, dass die Deklaration der Variable via let innerhalb der Bedingung eine lokale Variable res erzeugt hat.

Das heißt, innerhalb der Bedingung existiert eine Variable res, und außerhalb der Bedingung - eine andere. Man kann sich davon überzeugen, indem man den Wert der Variable in der Konsole innerhalb der Bedingung ausgibt:

let res = 1; if (true) { let res = 2; console.log(res); // gibt 2 aus } console.log(res); // gibt 1 aus

Der Autor des unten angeführten Codes wollte eine Altersprüfung auf das Erreichen von 18 Jahren durchführen. Der Code gibt jedoch bei jedem Wert des Alters den Wert undefined in der Konsole aus. Korrigieren Sie den Fehler des Autors des Codes. Hier ist der problematische Code:

let age = 17; let adult; if (age >= 18) { let adult = true; } else { let adult = false; } console.log(adult);

Der Autor des unten angeführten Codes wollte eine Altersprüfung auf das Erreichen von 18 Jahren durchführen. Nach der Überprüfung des Codes stellte sich heraus, dass wenn das Alter gleich oder größer 18 Jahren ist, dann wird in die Variable adult true geschrieben, wie es sein soll, jedoch, wenn das Alter kleiner als 18 ist, dann hat die Variable adult den Wert undefined. Korrigieren Sie den Fehler des Autors des Codes.

Hier ist der problematische Code:

let age = 17; let adult; if (age >= 18) { adult = true; } else { let adult = false; } console.log(adult);

Der Autor des unten angeführten Codes wollte eine Altersprüfung durchführen. Der Code gibt jedoch bei jedem Wert des Alters den Wert undefined in der Konsole aus. Korrigieren Sie den Fehler des Autors des Codes.

Hier ist der problematische Code:

let age = 17; let res; if (age >= 18) { if (age <= 23) { let res = 'von 18 bis 23'; } else { let res = 'älter als 23'; } } else { let res = 'jünger als 18'; } console.log(res);

Der Autor des unten angeführten Codes wollte eine Altersprüfung durchführen. Der Code gibt jedoch bei einem Alter größer als 18 Jahren den Wert undefined in der Konsole aus. Korrigieren Sie den Fehler des Autors des Codes.

Hier ist der problematische Code:

let age = 19; let res; if (age >= 18) { let res; if (age <= 23) { res = 'von 18 bis 23'; } else { res = 'älter als 23'; } } else { res = 'jünger als 18'; } console.log(res);
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