Читать книгу JavaScript für Ungeduldige - Cay Horstmann - Страница 33
1.9null und undefined
ОглавлениеJavaScript kennzeichnet das Fehlen eines Wertes auf zwei verschiedene Arten. Wenn eine Variable deklariert, aber nicht initialisiert wird, ist ihr Wert undefined. Das geschieht häufig bei Funktionen: Wenn Sie eine Funktion aufrufen, aber keinen Parameter bereitstellen, hat die Parametervariable den Wert undefined. Der Wert null dagegen dient dazu, die beabsichtigte Abwesenheit eines Wertes zu kennzeichnen.
Ist diese Unterscheidung sinnvoll? Darüber gehen die Meinungen auseinander. Manche Programmierer meinen, dass die Verwendung zweier solcher Verlegenheitswerte fehleranfällig ist. Deshalb raten sie dazu, nur einen davon zu verwenden. Das sollte dann undefined sein, da es nicht möglich ist, diesen Wert in JavaScript zu vermeiden, wohingegen Sie auf null (fast) immer verzichten können.
Nach der gegenteiligen Ansicht sollten Sie weder Werte auf undefined setzen noch undefined von einer Funktion zurückgeben lassen, sondern für fehlende Werte stets null verwenden. Dadurch bleibt undefined als ein Signal reserviert, das auf ernste Probleme hindeutet.