Hallo zonk,
Ich verstehe nicht, wie toString und valueOf funktionieren.
zusammen in einem Objekt nicht, wenn Du JS die Wahl überlässt. Hier musst Du wohl auf nummer sicher gehen und die Methoden des Objektes explizit aufrufen:
Aber wieso das so ist, weißt Du auch nicht?
Ähnlich ist es hier:
Number.prototype.toString = function(){
return 1000;
};
z1 = new Number(10);
z2 = 10;
alert(z1); // ist 1000
alert(z2); // ist 10
Hingegen
Function.prototype.toString = function() {
return "f";
};
f1 = new Function("");
function f2(){}
alert(f1); // ist f
alert(f2); // ist f
Scheinbar haben primitive Zahlen eigene toString-Methoden!?