Урок 20
Случайные числа

красным цветом даны примечания переводчика
Концепция__Скрипт__Эффект__Разбор скрипта__Задание

Оглавление (в новом окне)

Концепция

Сегодня вы познакомитесь со случайным выбором чисел. Генерируя случайные числа, JavaScript пользуется датой и временем.

Скрипт

<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
function rand()
      {
          var now=new Date()
          var num=(now.getSeconds())%10
          var num=num+1
          alert(num)
      }
</SCRIPT>
</HEAD>
<BODY>
<h1>Случайное число</h1>
<form> 
   <INPUT TYPE="button"
   VALUE="Случайное число от 1 дo 10" 
   onClick="rand()">
</FORM>
</BODY>
</HTML>

 

Эффект

Случайное число

.

Разбор скрипта

  • Сегодня начнем с функции:

function rand()
{
var now=new Date()
var num=(now.getSeconds())%10
var num=num+1
alert(num)
}

  • Случайный выбор числа осуществляется в несколько шагов:
    • Во-первых, создаем функцию, к примеру, rand().
    • Потом создаем переменную для метода new Date().
    • И еще одну переменную, num. Она содержит метод getSeconds(), так как в данном случае мы воспользуемся секундами, чтобы выбрать случайное число. Элемент %10 говорит скрипту, что нужно выбирать из десяти чисел.
  • Мы уже говорили, что JavaScript, как и многие другие компьютерные языки, начинает отсчет с нуля. Таким образом, прибавляя к случайному числу единицу (num=num+1), мы задаем числа не от 0 до 9, а от 1 до 10.
  • Наконец alert показывает число.
  • Теперь элемент, запускающий функцию:

<form>
<INPUT TYPE="button" VALUE="Случайное число от 1 дo 10" onClick="rand()">
</form>

  • Это обыкновенная кнопка и событие через onClick, с которым вы не раз встречались. Все очень просто.

Ваше задание

Напишите программу JavaScript, в которой пользователь нажимал бы кнопку, а программа предлагала бы ему случайную цифру от 0 до 5 со словами: "Ваша случайная цифра: "х".

Возможный ответ здесь

Концепция__Скрипт__Эффект__Разбор скрипта__Задание

Вперед, на Урок 21

авторы Джо Бернс и Эндри Грауни. Оригинал и многое другое на английском языке © EarthWeb Inc.
Перевод, оформление и верстка © Татьяна.

Hosted by uCoz