Hallo,
PHP:
function test($x="default") {
echo $x;
}
test();JS:
function test(x) {
x=(x || x==0)?x:"default";
document.write(x);
}
test();Beidesmal ist das Ergebnis gleich, egal ob und was Du test() mit auf den Weg gibst. Ich sehe da auch keinerlei "Unlogik" oder falsches Verhalten.
Nein. Wenn man den Parameter null übergibt, was in gewissen Kontexten notwendig ist, wird $x in PHP null. In JavaScript hingegen wird er 'default'. PHP und deine JavaScript-Variante gleichen sich im besagten Punkt nicht. Darauf will Struppi doch die ganze Zeit hinaus.
Mathias