Der Browser-Speicher localStorage ist nicht verfügbar. Entweder unterstützt dein Browser ihn nicht oder du hast ihn deaktiviert oder er ist voll. Ohne localStorage werden deine Lösungen nicht gespeichert.
undefined
Bisher hatten wir Variablen bei der Deklaration immer auch initialisiert.
Nicht initialisierte Variablen können auch bei Funktionsaufrufen vorkommen. Ruft man eine Funktion, die einen Parameter erwartet, ohne Argument auf, dann erhält der Funktionsparameter den Wert
Eine Funktion, die einen Parameter erwartet, kann immer auch ohne Argument aufgerufen werden. Man sollte sich beim Schreiben von Funktionen immer überlegen, was in diesem Fall passieren soll. Gute Praxis ist es, in einem solchen Fall dem Parameter einen Default-Wert (engl.: Vorgabe) zuzuweisen. Das hatten wir schon bei der String-Methode
Um eine deklarierte Varaible auf
// Deklaration und Initialisierung
let x = 1;
Man kann eine Variable aber auch deklarieren und ihr später einen Wert zuweisen.
let x; // Deklaration
x = 1; // Initialisierung
Variablen, die nicht initialisiert wurden, haben den Wert undefined
(engl.: nicht definiert).Nicht initialisierte Variablen können auch bei Funktionsaufrufen vorkommen. Ruft man eine Funktion, die einen Parameter erwartet, ohne Argument auf, dann erhält der Funktionsparameter den Wert
undefined
.
function echo(x) {
return x;
}
// Aufruf ohne Argument
let y = echo();
echo
wird ohne Argument aufgerufen. Dem Parameter x
wird so kein Wert zugewiesen,
er erhält den Wert undefined
.
Da echo
den Parameter x
einfach zurückgibt,
erhält auch y
den Wert undefined
.Eine Funktion, die einen Parameter erwartet, kann immer auch ohne Argument aufgerufen werden. Man sollte sich beim Schreiben von Funktionen immer überlegen, was in diesem Fall passieren soll. Gute Praxis ist es, in einem solchen Fall dem Parameter einen Default-Wert (engl.: Vorgabe) zuzuweisen. Das hatten wir schon bei der String-Methode
charAt(index)
kennengelernt.
Normalerweise gibt diese Methode das Zeichen an der Stelle index
zurück. Rufen wir charAt
ohne Argument auf, erhält index
den Default 0
.
Es wird das Zeichen an der Stelle 0
zurückgegeben.Um eine deklarierte Varaible auf
undefined
zu überprüfen, verwendet man wie üblich die
strikte Gleichkeit.
Die Methode charAt
könnte also folgenden Code-Ausschnitt enthalten:
if (index === undefined) {
index = 0;
}
Aufgabe
Schreibe eine Funktion
hallo
, die einen String als Parameter entgegennimmt und 'Hallo <Parameter>!'
zurückgibt.
hallo('Akgün')
sollte 'Hallo Akgün!'
zurückgeben.
Wird hallo
ohne Argument aufgerufen, so soll 'Hallo Welt!'
zurückgegeben werden.