Die Lösung, dass ein false-Wert auch als Boolean-Objekt übermittelt werden kann, war ein Detail, das mir als "interessierter Laie" so nicht klar war. Aber genau damit kann ich in meinem Projekt eine Prüfung vornehmen, die meinem Konstruktor die Möglichkeit gibt, ein passendes Objekt, oder eben "false" (als Boolean-Objekt) zurückzuliefern.
Eine Fehlerbehandlung ist in meinem Falle nur darauf zu begrenzen, dass eben das passende Objekt zurückgeliefert wird - mehr nicht.
Interessant für mich waren folgende Umstände, die mir sehr weitergeholfen haben:
alert(new Boolean(false)); // gibt "false" aus -> Wert des Objektes
if (new Boolean(false)) { alert("true!") } // gibt "true" aus -> Objekt selbst wird als "true" interpretiert
// ergibt "false" -> Wert des Objektes
if (new Boolean(false) != false) {
alert("true");
} else {
alert("false");
}
// ergibt "true" -> Typ des Wertes des Objektes ist eben kein primitive
if (new Boolean(false) !== false) {
alert("true");
} else {
alert("false");
}
Vielen Dank an alle, die mir hier wertvollen Hinweise gegeben haben! Auch wenn ich keine "echte" Fehlerbehandlung vor hatte, sind diese Ideen mit throw
auch wieder etwas, das ich neu dazugelernt habe, und das ich vielleicht einmal später gebrauchen kann.
Liebe Grüße,
Felix Riesterer.
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)