Програмиране в Интернет - теория - 4/10
5) УСЛОВНИ КОНСТРУКЦИИ
1. Блокови конструкции if/else.
а) структура:
{
... // тук стоят JavaScript командите, които се изпълняват при
} // удовлетворяване на логическото условие – стойност true)
else
{
... // тук стоят JavaScript командите, които се изпълняват при
} // неудовлетворяване на логическото условие – стойност false)
Частта else с командите след нея не е задължителна. Ако не се постави, действието продължава с командите след частта с if.
Условните конструкции могат да се влагат. Втората блокова конструкция if/else може да се постави в скобите след if и ще се изпълни, ако логическото условие на първата конструкция се удовлетворява. Може да се постави в скобите след else и ще се изпълни, ако лог. условие на първата конструкция не се удовлетворява. На същия принцип могат да се влагат и повече условни конструкции.
б) сложни сравнения:
Използват се скоби за ограждане на елементите, от които се състои едно сложно сравнение.
Пример1:
Проверка дали х е от интервала (2;11]:
if ((x>2)&&(x<=11)) …
Пример2:
Проверка дали х се дели на 5 чрез признака за деление на 5:
if ((x%10==0)||(x%10==5)) …
2. Конструкция switch.
Тя позволява да се избира измежду повече от две възможности (не както при if/else измежду две).
Нейният вид е:
{
case стойност1:
...; // действия 1
break;
case стойност2:
...; // действия 2
break;
……………
case стойностk:
...; // действия k
break;
default:
...; // действия
}
Ако стойността на променливата е равна на стойност1 се извършват действия 1, ако е равна на стойност2, се извършват действия 2 и т.н. Конструкцията break след извършените действия казва на браузъра да излезе от блока на кода и да премине към първия ред след блока. Така се осигурява невъзможността да се изпълнят всички случаи след този, който е върнал true. Ако стойността на променливата не съвпада с нито една стойност се изпълняват действията след default.
------------------------------
6) ЦИКЛИ
1. Определение.
Цикълът е част от код, който може да се изпълнява многократно. Циклите в JavaScript са три вида: цикъл for, цикъл while и цикъл do while.
2. Цикъл for.
а) структура:
{
…… // тяло на цикъла – действията, които се повтарят
}
Тук променливата-брояч не е нужно да се декларира предварително с var.
for (i=1; i<=10; i+=1)
{
document.write (“Цикълът се изпълнява за “+i+” път. <BR>”)
}
В примера променливата-брояч има начална стойност 1. При всяко преминаване през цикъла нейната стойност се увеличава с 1. Цикълът ще се повтаря, ако стойността на i е по-малка или равна на 10 (т. е. 10 пъти).
б) вложени цикли:
В тялото на цикъла може да бъде вложен друг цикъл, в неговото тяло – трети и т. н.
for (i=1; i<=10; i+=1)
{
document.write ("Таблица за умножение с "+i+"<BR>");
for (j=1; j<=10; j+=1)
{
var k=i*j;
document.write (i+" x "+j+" = "+k+"<BR>");
}
}
3. Цикъл while.
Този цикъл повтаря изпълнението си, докато даденото логическо условие връща стойност true. Общата структура е следната:
{
…… // тяло на цикъла – действията, които се повтарят
}
При цикъла while (за разлика от цикъла for) трябва да се декларира променливата (променливите), която се използва в логическото условие и да й се присвои стойност преди да се вмъкне в цикъла. В тялото на цикъла трябва да се променя стойността й, иначе ще се получи безкраен цикъл. Ако логическото условие не е изпълнено още в началото, командите в цикъла няма да се изпълнят нито веднъж.
Цикли while също могат да се влагат.
Ето как би изглеждал примерът от 2.а) с цикъл while:
while (i<=10)
{
document.write (“Цикълът се изпълнява за “+i+” път. <BR>”);
i+=1
}
4. Цикъл do while.
И този цикъл повтаря изпълнението си, докато даденото логическо условие връща стойност true. Но за разлика от цикъл while, цикълът do while се изпълнява поне веднъж, дори и логическото условие да не се изпълнява още в началото. Общата структура е следната:
{
…… // тяло на цикъла – действията, които се повтарят
} while (логическо условие за продължаване на цикъла)
Ето така ще изглежда примерът от 2.а) с цикъл do while:
do
{
document.write (“Цикълът се изпълнява за “+i+” път. <BR>”);
i+=1
} while (i<=10)