Struppi: Boolean-Objekt

Beitrag lesen

Da im Wiki grad jemand so nett war, das Kapitel zum Boolean-Objekt einzuarbeiten, stellte sich für mich die Frage: Welche praktischen Anwendungsfälle kann man damit lösen, die sich nicht allein durch den Gebrauch der beiden "primitiven Werte" true und false erledigen lassen? Es geht mir auch darum, (Ideen für) Anwendungsbeispiele zu bekommen, die nicht so "an den Haaren herbeigezogen" aussehen.

Ein praktisches Beispiel dürfte schwer sein. Der einzige wirkliche Unterschied liegt darin, dass typeof ein anderes Ergebnis bringt.

var b = true;  
alert(typeof b); // boolean  
b = new Boolean(true);  
alert(typeof b); // object

Damit könnte b z.b. als Parameter verwendet werden, in einer Funktion die ein Objekt erwartet.

var b1 = true;  
var b2 = new Boolean(true);  
var b3 = new Boolean(false);  
f(b1); // p ist kein objekt  
f(b2); // ok  
f(b3); // p ist false  
  
function f(p) {  
	if(typeof p != 'object') return alert('p ist kein objekt');  
	if(p == false) return alert('p ist false');  
	alert('ok');  
}  

Wirklich sinnvoll ist es zwar nicht, aber damit liessen sich in der Funktion mehr Fälle unterscheiden, als p == null und p != null

Struppi.