Web-программирование: «Java Script (JS): варианты выбора, конструкция switch...case». |
|
|
Автор megabax
|
11.12.2010 г. |
Урок 13. Управление шрифтами в CSS
New Page 1
Web-программирование: «Java
Script (JS): варианты выбора, конструкция switch...case».
Вы уже
знакомы с такой конструкцией ветвления, как if ... else.
Попробуем при помощи этой конструкции написать функцию правильного
склонения слова "год", а потом переписать ее с использованием более компактного
оператора switch.
И так, первый
вариант:
<HTML>
<HEAD>
<TITLE>Урок 40. Java Script: оператор множественного выбора</TITLE>
</HEAD>
<BODY>
<SCRIPT Language="JavaScript" type="text/javascript">
var age=parseInt(prompt("Введите ваш возраст",""));
if (!isNaN(age))
{
var last=age%10;
var last2=age%100;
var def=(last>1)+(last>4)+(last==0)*2+(last>10)*10+(last2>10)*(last2<20)*2;
if (def==0)
{
var text=" год";
} else
{
if(def==1)
{
var text=" года";
} else
{
var text=" лет";
}
}
document.write("Вам ",age,text);
} else document.write("Вы не пожелали назвать свой возраст");
</SCRIPT>
</BODY>
</HTML>
|
А вот и
второй вариант:
<HTML>
<HEAD>
<TITLE>Урок 40. Java Script: оператор множественного выбора</TITLE>
</HEAD>
<BODY>
<SCRIPT Language="JavaScript" type="text/javascript">
var age=parseInt(prompt("Введите ваш возраст",""));
if (!isNaN(age))
{
var last=age%10;
var last2=age%100;
var def=(last>1)+(last>4)+(last==0)*2+(last>10)*10+(last2>10)*(last2<20)*2;
switch (def)
{
case(0):
var text=" год";
break;
case(1):
var text=" года";
break;
default:
var text=" лет"
}
document.write("Вам ",age,text);
} else document.write("Вы не пожелали назвать свой возраст");
</SCRIPT>
</BODY>
</HTML>
|
Делает
абсолютно то же самое, но выглядит гораздо компактнее и более удобочитаемо. А
если условий выбора было бы больше, например. десяток?
Тогда уж точно, без switch ... case не обойтись. И,
напоследок, синтаксис конструкции:
switch (<Параметр>)
{ case(<Значение
1>):
<оператор1>
break
case(<Значение
2>):
break
...
default:
<оператор по умолчанию>
} |
|