Доброго ночи!
При разборе, казалось бы легкого скрипта, обнаружил для себя не совсем понятный момент.
var planetList = new Array();
planetList[0] = 'Меркурий';
planetList[1] = 'Венера';
planetList[2] = 'Земля';
planetList[3] = 'Марс';
var wayToSun = new Array();
wayToSun[0] = '52 млн.км';
wayToSun[1] = '108 млн.км';
wayToSun[2] = '149 млн.км';
wayToSun[3] = '228 млн.км';
var planetDiameter = new Array();
planetDiameter[0] = '4 880 км';
planetDiameter[1] = '12 100 км';
planetDiameter[2] = '12 750 км';
planetDiameter[3] = '6 800 км';
function doCount(){
var userText = document.getElementById('planetName').value;
for( var i = 0; i < planetList.length; i++) {
if(planetList[i] == userText){
break;
}
}
document.write('<p class="hightlight">'+planetList[i]+'</p>');
document.write('<p class="hightlight">Расстояние до солнца: '+wayToSun[i]+'</p>');
document.write('<p class="hightlight">Диаметр планеты: '+planetDiameter[i]+'</p>');
}
<label for="planetName">Введите название планеты:</label>
<input type="text" id="planetName" name="planetName" />
<input type="button" id="counter" value="Рассчитать" onclick="doCount()"/>
Как я и говорил всё до банальности просто, мат.часть так скажем. Но вот ситуацию почему скрипт перестаёт "работать", когда переменная userText объявляется вне тела функции (если я всё правильно понимаю, в таком случае она является глобальной), я никак не могу осилить.