Оператори за цикъл
В езика javascript често се налага да се повтаря една и съща операция няколко пъти. За тази цел се използва оператор за цикъл. Първия оператор за цикъл, който ще разгледаме е for. Синтаксисът му е следния:
for (i=0; условие; i++) {
}
...където i е променлива, която се използва за брояч, а условие е булев израз. Нека да направиме скрипт, който да извежда на екрана числата от 0 до 9 :
for (i=0;i<10; i++) {
document.write(i)
document.write("<BR>")
}
За
удобство от сега нататък вече няма да пишем HTML частта от документа.
Оператора for е оператор за
цикъл, който се управлява от една променлива, наречена брояч. В случая това е
променливата i, но можете да и дадете каквото
искате име. Можем да разделим мислено оператора for
на две части. Първата част следва веднага след for
и е заградена с кръгли скоби. Втората част е тялото, т.е. там са разположени
операторите,
които ще се изпълняват по време на цикъла.
В първата част (да я наречем "условна" защото там
се поставя условието) се извърша броенето и проверката дали дадено условие е
изпълнено. Нека да я разгледаме по-подробно.
for (i=0;i<10; i++)
Първо създаваме една променлива i
като и даваме начална стойност 0 (i=0). След
това правим проверка дали стойноста на променливата i
е по-малка от 10 (i<10). Ако това условие е
вярно, продължаваме нататък, ако не е, цикълът спира. Третата стъпка в
условната част е увеличаването на i с 1 (i++). Ако цикълът не е спрян поради изпълняване на
условието, той се повтаря отново докато не се изпълни, но без да се нулира
променливата отначало. Така при първото завъртане на цикъла i ще бъде равно на 0, при второто на 1 и т.н. докато
не стане 9. Когато стане 9 цикълът ще се прекъсне.
Тялото на цикъла се изпълнява толкова пъти, колкото се
завърта самия цикъл. В този случай в тялото имаме оператор за отпечатването на
променливата i на екрана и преминаването на нов
ред :
{
document.write(i)
document.write("<BR>")
}
Така изпълнявайки този цикъл ще видите на екрана изписани
цифрите от 0 до 9. Ако искате да се изписва и числото 10, трябва да промените
условието, например вместо i<10 да напишете i<=10. Трябва да знаете че всички оператори вътре
в условната част трябва да се отделят един от друг с точка и запетая (;).
С помощта на цикъла for можете да правите доста сложни
скриптове, но това ще го разгледаме по-подробно в готовите скриптове.
Другия тип цикъл в javascript е :
while (условие) {
оператори
}
Този цикъл е малко по-опростен. При него стойностите на всички променливи се задават предварително, а самия цикъл се изпълнява докато условието в кръглите скоби отговаря на истината. Нека направим примера с отпечатването на числата от 0 до 9 с помощта на while :
i=0
while (i<10) {
document.write(i)
document.write("<br>")
i++
}
Този скрипт работи по същия начин като предишния, само че с друг оператор за цикъл. Първо присвояваме начална стойност 0 на променливата i . След това поставяме условие докато i<10 да се изпълнява частта от скрипта във фигурните скоби. Там се увеличава и стойноста на i с единица.
Коментари