Приятно осознавать, что твою рассылку не просто читают. Пример этому третий вопрос. Просьба ко всем подписчикам: «Не копируйте бездумно примеры. Рассматривайте их подробно. Указывайте на ошибки. Присылайте ваши примеры и объяснения. Не забывайте, что я изучаю язык вместе с вами и могу ошибаться и допускать неточности».
В прошлом выпуске мы познакомились с оператором циклов for. Сегодня рассмотрим еще два оператора циклов while и do-while.
Оператор while (до тех пор, пока) имеет следующий синтаксис:
while (условие)
{
код
}
При работе этого оператора сначала проверяется условие. Если оно, верно, выполняется код (первая итерация). Затем снова проверяется условие, и т.д.
В отличие от оператора for, выражение обновления, в операторе while, записывается в фигурных скобках.
Пример.
<html>
<head>
<head>
<title>Пример</title>
<script language="JavaScript">
<!--
var x=10
while (x>=0)
{
alert(x);
x = x - 2
}
// -->
</script>
</head>
<body>
<p> Счетчик циклов может быть не только возрастающим, но и убывающим!</p>
</body>
</head>
</html>
В операторе while Вы также можете использовать операторы break и continue. Воспользуйтесь примерами из прошлого выпуска (оператор for) и выполните их с оператором while.
Еще один оператор циклов do…while (делай до тех пор, пока). Синтаксис оператора do while:
do{
код
}
while (условие)
В отличие от оператора while в операторе do…while код выполняется хотя бы один раз.
Пример.
<html>
<head>
<head>
<title>Пример</title>
<script language="JavaScript">
<!--
var x=10
do
{
alert(x);
x = x - 2
}
while (x>=0)
// -->
</script>
</head>
<body>
<p> Счетчик циклов может быть не только возрастающим, но и убывающим!</p>
</body>
</head>
</html>
Попробуйте другие примеры.
Измените, условия в примерах для операторов while и do…while и посмотрите, как они будут реагировать на эти изменения
До следующего выпуска!
ВАШИ ВОПРОСЫ
Здесь будут размещаться Ваши вопросы. Поскольку я сам чайник в JavaScript, то будем сообща искать на них ответы. Обязательно познакомьтесь с правилами подачи вопросов и ответом.
ВОПРОС №1
Как сделать повторяемый цикл? Тоесть чтобы скрипт каждый раз
обновлялся. Например, я использую Часы, но приходится каждуй раз в
браузере жать обновить. Я знаю, что эта команда типа: refresh, но эта
команда не работает.
ОТВЕТ
<html>
<head>
<title>Время.</title>
</head>
<body onLoad="myclock()">
<script language="JavaScript">
<!--
function myclock()
{
ndata=new Date()
// Получение показаний часов, минут и секунд
hours= ndata.getHours();
mins= ndata.getMinutes();
secs= ndata.getSeconds();
// Дополнение показаний нулем слева
if (hours < 10) {hours = "0" + hours }
if (mins < 10) {mins = "0" + mins }
if (secs < 10) {secs = "0" + secs }
// Суммирование всех данных для вывода
datastr =hours+":" + mins+":" +secs
// Запись данных
document.clockexam.clock.value = " "+datastr;
// Вызов функции с интервалом 1000 ms
setTimeout("myclock()", 1000);
}
-->
</script>
<form name="clockexam"><input type="text" size="9" name="clock"></form>
</body>
</html>
В IE(6) ни один пример не работает: то ли игнорируется, то ли еще чего, но результат - пустой экран. Под Оперой и FireFox - все ОК. "Выполнять сценарии приложений Java" установлено на "разрешить". Возможно, необходимо как-то дополнительно настроить параметры IE?
ВОПРОС №3
Не совсем понял смысл использования оператора continue.
ОТВЕТ
В данном примере оператор continue позволяет вывести ряд чисел, на которые число 100 делится без остатка.
<html>
<head>
<head>
<title>Пример</title>
<script language="JavaScript">
<!--
var i=0, j=100;
while (i<j) {
i++;
if (j%i !=0) continue;
document.writeln(i);
}
// -->
</script>
</head>
<body>
<p> </p>
</body>
</head>
</html>
Здесь определяется цикл, в котором на каждом шагу делитель увеличивается на 1, после производится операция остаток от деления (j%i). Если остаток равен 0 интерпретатор переходит к следующему оператору и число выводится на странице. Если остаток не равен 0, то выполняется оператор continue и начинается новая итерация.
Правила подачи вопросов и ответов.
Общие
Нековеркайте слова. Не применяйте нецензурные выражения. Не принимаются письма с вложенными файлами.
Такие письма будут просто удаляться.
Правила подачи вопросов
Правильно и понятно формулируйте ваши вопросы. Указывайте ваш рабочий адрес электронной почты. Старайтесь не забегать вперед рассылки. Указывайте тему письма как «Вопрос».
Правила для ответов
При ответе в теме письма указывайте Ответ - (номер вопроса). Если хотите ответить на несколько вопросов, то на каждый вопрос отвечайте отдельным письмом.