Джо Бернс Урок 22. If и Else.
Концепция
Сегодня у нас в меню случайное число, две функции и знакомство с командой Else на закуску.
If/Else (если/иначе) дают вам дополнительный контроль над программой, позволяя принимать решения на оба случая: и когда условие выполнено, и когда не выполнено.
Скрипт
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
function rand()
{now=new Date()
num=(now.getSeconds())%10
num=num+1
}
function guessnum()
{guess=prompt("Угадай, какое?")
if (eval(guess) == num)
{alert("ПРАВИЛЬНО!!!")
rand()
}
else
alert("Нет. Попробуй еще раз.")
}
</SCRIPT>
<BODY onLoad="rand()">
<h3>Я загадал число от 1 до 10</h3>
<FORM NAME="myform">
<INPUT TYPE="button" VALUE="Угадай"
NAME="b1" onClick="guessnum()">
</FORM>
</BODY>
</HTML>
Разбор скрипта
- Начнем со строки BODY:
<body bgcolor="хххххх" onLoad="rand()">
На этот раз функция запускается не кнопкой через onClick, а командой onLoad, чтобы к тому времени, когда пользователь нажмет на кнопку, число уже было выбрано. Если сделать это, как в прошлом уроке, то каждый раз, нажимая на кнопку, вы будете получать новое число. А оно должно оставаться одним и тем же, пока вы гадаете.
- Первая функция:
function rand() {
now=new Date()
num=(now.getSeconds())%10
num=num+1
}
Функция выбирает наугад число от 0 до 9 и привязывает его к num. Потом прибавляет к num единицу, чтобы выбор осуществлялся между 1 и 10. Мы делали это на прошлом уроке.
- Вторая функция:
function guessnum()
{guess=prompt("Угадай, какое?")
if (eval(guess) == num)
{alert("ПРАВИЛЬНО!!!")
rand()
}
else
alert("Нет. Попробуй еще раз.")
}
Этот фрагмент написала Эндри, потому что она очень умная. В памяти компьютера уже есть число, полученное через первую функцию. Вторая дает вам возможность угадать его. Смотрите, что происходит:
- С помощью запроса создается переменная guess (догадка). Обратите внимание на {фигурные скобки}. Все это очень похоже на Урок 21.
- Переходим к IF/Else. Если (if) guess (догадка) равна загаданному числу num, тогда запускается команда alert("ПРАВИЛЬНО").
- Если это не так, а иначе (else), тогда запускается другая команда alert.
- Это вам уже знакомо:
<form name="myform">
<input type="button" value="Угадай" name="b1" onClick="guessnum()">
</form>
Кнопка запускает функцию, которая дает возможность угадать задуманное число.
Ваше задание
Придется вам постараться! Измените сегодняшний скрипт так, чтобы при неверной догадке он сообщал пользователю, что он назвал слишком большое или слишком маленькое число.
Подсказка! В этом случае возможны только три решения: слишком много, слишком мало или правильно. Подумайте вот о чем: нужна ли вам команда Else или сойдет и парочка дополнительных If?
Назад | Содержание | Вперед
|

Джо Бернс
Введение
Сообщения об ошибках
Дата и время
Команда onMouseOver
Еще обработчики событий
Запрос пользователю
Концепция свойств
Иерархия объектов
Создание функции
onUnload и onMouseOut
Новые окна
Новые окна (прод.)
Метод confirm
Математ. переменные
Смена картинки
Смена через функцию
Функция внутри формы
Форма и свойство value
Данные в функцию
Случайные числа
Введение в if
If и Else
Случайный выбор
Введение в FOR
Введение в WHILE
Введение в массивы
Слайд-шоу
Анимация
Подтверждение ввода
|