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.

NaN

NaN repräsentiert den Wert Not-A-Number (engl.: Keine-Zahl). Numerische Operationen oder Funktionen geben NaN zurück, wenn sie keinen Wert berechnen können. Wir hatten dies bei parseInt kennengelernt. parseInt gibt NaN zurück, wenn es keine Zahl parsen kann. Ein weiteres Beispiel ist die Berechnung der Wurzel aus einer negativen Zahl:
var age = parseInt('Babylon');
var length = Math.sqrt(-1);
Sowohl age als auch length haben den Wert NaN.

Möchte man testen, ob NaN vorliegt, kann man leider nicht === verwenden. NaN ist der einzige Wert in JavaScript, der nicht mit sich selbst gleich ist. NaN === NaN ergibt false. Um auf NaN zu testen, sollte man die Funktion Number.isNaN verwenden:
var input = 'Babylon';
var message;
var age = parseInt(input);
if ( Number.isNaN(age) ) {
  message = 'Du hast keine Zahl eingegeben.';
}

Aufgabe

Schreibe eine Funktion parseFirstInt, die einen String entgegennimmt und die die erste in dem String vorkommende ganze Zahl zurückgibt. Enthält der String keine ganze Zahl, soll man NaN erhalten. parseFirstInt('Sonnebornstr. 27') sollte 27 zurückgeben. parseFirstInt('Babylon') sollte NaN ergeben.