Рассмотрим следующий фрагмент кода.
<html>
<body>
<script>
var x = 5; //globally declared
function showX()
{
alert("x="+x); //trying to display global value
var x=10; //trying to create and initialize a local x
}
</script>
<input type = "button" value="Show X" onclick="showX()">
</body>
</html>
В уведомлении указано «x = undefined». И не печатает глобальное значение х, как ожидалось. Эквивалентный код Java будет отображать 5! Итак, это ошибка? Если нет, то как объяснить это поведение?