come mai uno script di questo tipo:

<html>
<head>
<pre>

<script language="javascript">
<!--

function ciao()
{
document.write ("ciao");
}

-->
</script>

</pre>

<body>
<pre>

<script language="javascript">
<!--

document.write (ciao());

-->
</script>

</pre>
</body>
</html>

mi stampa sullo schermo: ciaoundefined

e non solamente: ciao?
grazie.