einfache Datentypen, werden in JS nicht als Referenzen übergeben. D.h. du müßtest hier eigentlich eine Fehlermeldung erhalten (Fehlerkonsole ist tatsächlich leer?), da fn der string 'test' ist und 'test' = 't' geht nicht.
Nein, keine Fehlermeldungen (Firefox, Safari).
Was sind einfache Datentypen? Bzw. was sind den 'komplexe' Datentypen (in JS natürlich)?
Bei Funktionen funktionierts (*grins*) auch nicht:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>hyph.js - test</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<script type="text/javascript">
var foo=function() {
alert('foo')
};
function overwrite(fn) {
fn=function() {
alert('bar');
};
}
</script>
</head>
<body>
<p>
<a href="#" onclick="overwrite(foo);">Click1</a><br>
<a href="#" onclick="foo();">Click2</a>
</p>
</body>
</html>
Alertet auch 'foo'.