Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Создание и продвижение сайта,Заработок в интернете JavaScript — Организация ветвлений в программах


Всем привет. Хочу снова вернуться, кJavaScript и сегоднявспомнить, что такоеОрганизация ветвлений в программах и как они осуществляются.Кстати, если кто-нибудь желает со скидкой купить битрикс, то на этом сайте можно это сделать.

Условный оператор

При составлении программы часто необходимо выполнение различных действий в зависимости от результатов проверки некоторых условий. Для организации ветвлений можно воспользоваться условным оператором, который имеет вид:

if В {S1}
else {S2}

где B выражение логического типа; S1 и S2 операторы. Выполнение условного оператора осуществляется следующим образом. Вычисляется значение выражения B. Если оно истинно, выполняются операторы S1, если ложно операторы S2. Если последовательность операторов S1 или S2 состоит лишь из одного оператора, фигурные скобки можно опустить. Возможна сокращенная форма условного оператора:

if В {S}

где B выражение логического типа; S последовательность операторов. Выполнение краткого условного оператора осуществляется так: вычисляется значение выражения B, если оно истинно, выполняются операторы S.
Часто в сети Интернет можно встретить Web-страницы, на которых в анкете требуется указать возраст. Обработка анкеты включает, в частности, определение и исследование возрастного состава респондентов. В качестве примера использования условного оператора напишем сценарий, который по возрасту анкетируемого определяет возрастную категорию, к которой он относится. Зададим возрастные категории следующим образом. Если возраст менее 35 лет, респондент относится к категории «молодой», все анкетируемые возраста от 35 до 60 составляют категорию «средний возраст», лица, старше 60 лет, относятся к категории «пожилые».

Создадим документ, в поле формы которого вводится возраст в годах. При выполнении сценария определяется категория, к которой относится анкетируемый.

<html>
<head>
<title> Возрастной состав </title> 
<script LANGUAGE="JavaScript"> 
< ! //
function   cat (obj) 
{   var a = Number(obj.num.value); 
var s="пожилой" 
if (a < 35) s="молодой" 
else
if (a >=35 && a &lt;60) 
s="средний возраст" 
obj.catuser.value = s 
}
//> 
</script> 
</head> 
<body>
<h4> Категория возрастного состава </h4> 
<form name="forml">
Введите возраст в годах: <input type="text" size=3 name="num"/><br /><br /> 
<input type="button" value=Oпpeдeлить
onClick="cat (forml)"/><br /><br /> 
<input type="text"   size=15 name="catuser"/><hr /> 
<input type="reset" value=Отменить/> 
</form> 
</body> 
</html>

При анализе данных можно использовать не только условный оператор, но и так называемое условное выражение. Рассмотрим оператор присваивания, правая часть которого является условным выражением S=(a<18) ? «ребенок» : «взрослый»
При построении условного выражения условие задается в круглых скобках. Если значение выражения в скобках true, то значением условного выражения является выражение, следующее за символом точка с запятой (строковый литерал «ребенок»). Если же значение выражения в скобках false, результатом условного выражения является выражение после символа двоеточия (строковый литерал «взрослый»). В рассмотренном случае вычисленное значение условного выражения присваивается переменной S.

Оператор switch и его свойства

В тех случаях, когда при решении задачи требуется выбрать один вариант действия из нескольких возможных, удобно воспользоваться оператором
switch.

Синтаксис оператора switch следующий:

switch (В)
{ case L1: S1;
case L2: S2;
...........

case Ln: Sn;
default: S
}

где B выражение; L1, L2,….,Ln литералы; S1, S2,….,Sn; S операторы.
Выполнение переключателя происходит так: вычисляется значение выражения B. Если значение в равно L1, выполняются операторы S1, а затем все остальные операторы либо до первого оператора break, либо до конца оператора switch. Если значение в равно L2, выполняются операторы S2, а затем все остальные операторы либо до первого оператора break, либо до конца оператора switch и т. д. Если же значение B не равно ни одному из значений L1, L2,…, Ln, выполняются операторы S. Часть default:S может отсутствовать, тогда переключатель имеет вид

switch (В)
{ case L1: S1;
case L2: S2;
............
case Ln: Sn;
}

В этом случае, если значение выражения B не равно ни одному из значений L1, L2, …. Ln, оператор switch завершает свою работу, что эквивалентно пустому оператору. На самом деле переключатель удобно записывать в виде:

switch (В)
{ case Ll: S1; break;
case L2: S2; break;
..................
case Ln: Sn; break;
default: S
}

В этом случае оператор break обеспечивает завершение работы переключателя после выполнения очередного варианта.
Путешествуя по сети Интернет, можно сделать много полезных вещей, например подписаться на электронное издание. Предположим, что с помощью анкеты, размещенной на Web-странице, пользователь хочет оформить подписку. Стоимость редакционной подписки зависит от срока подписного периода. Если выбирается один месяц, то стоимость будет 60 рублей, если подписка оформляется на 3 месяца, то стоимость составит 168 рублей, если 6 месяцев 312 рублей, а подписка на 12 месяцев 540 рублей.

Вычисление стоимости подписки

Создадим документ, в котором пользователь вводит срок подписного периода (1, 3, 6, 12 месяцев), в зависимости от которого определяется стоимость подписки.
Решить эту задачу можно, используя, как и в предыдущем случае, условный оператор. Однако в данном случае сценарий будет нагляднее и короче, если мы воспользуется оператором switch.

<html> 
<head>
<title> Стоимость подписки  
<script LANGUAGE="JavaScript"> 
< ! 
function   def (obj) 
{   
var n=Number 
(obj .num.value) d= document 
var s=""
switch (n)
{ case 1: s=60;   break; 
  case 3: s=168 ; break;
  case 6: s= 312 ; break;
  case 12: s=540 ; break;
default: s="неверен срок подписного периода"
}
obj.res.value=s }
//> 
</script> 
</title></head> 
<body>
<h4> Вычисление стоимости подписки </h4> 
<form name="forml">
Введите срок подписного периода: <input type="text" size=2 narae="num"/><br /> 
<input type=&

В избранное