JavaScript-opas

JAVASCRIPTIIN LIITTYVÄÄ KOULUTUSTA v.2008

Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi jo tänään. IT-koulutuksen asiantuntijasi, Koulutus- ja konsultointipalvelu KK Mediat

 

While-toistolause

While-toistolausetta suoritetaan niin kauan kuin ehto on tosi. Lause koostuu while-käskystä ja sitä seuraavasta ehtolauseesta. Syntaksiltaan komento on :


while (ehto) {
	// suorita jotain
}

Siispä esimerkiksi alla oleva muuttujan a arvon tulostus suoritetaan kaksi kertaa:


var a = 0;

while (a <= 1) {
document.write("muuttujan a arvo on ",a,"<br>");
a = a+1;
}

Etenkin While-toistolausetta käyttäessä kannattaa varoa nk. ikisilmukan tekemistä. Ikisilmukka syntyy kun annettu ehto ei koskaan täyty ja koodia suoritetaan "ikuisesti" (tai ainakin niin pitkään että selainohjelma kaatuu). Joissain selaimissa käyttäjää varoitetaan ikisilmukasta, mutta ei läheskään aina. Tässä asiassa vastuu on siis kehittäjällä. Alla on esimerkki ikisilmukasta, jota ei kuitenkaan kannata kokeilla muualla kuin omalla koneella:


var a = 0;

while (a < 1) {  
//a on aina pienempi kuin 1
document.write("moi");
}

While-lauseesta on olemassa toinenkin versio eli do-while-toistolause. Se eroaa normaalista while-ohjausrakenteesta siten, että do-lohko suoritetaan vähintäänkin kerran, vaikka while-ehto ei toteutuisikaan. Syntaksiltaan ohjausrakenne on :


do {
// suoritetaan vähintäänkin kerran
}
while (ehto) {
// suoritettava koodi
}

Esimerkiksi:


do {
a = a+1;
document.write("Arvo on ",a,"<br>");
}
while (a > 2) {
document.write("muuttujan a arvo on ",a,"<br>");
a = a+1;
}

While-lause tarjoaa kaksi kontrollikäskyä, joiden avulla suoritusta voidaan hallita. Komennolla break voidaan pysäyttää silmukan suorittaminen ja komennolla continue aloittaa silmukan suorittaminen alusta. Esimerkiksi :


var a = 0;
var k = 50;

while (a <= 100) {
	a = a+1;
	k = k + a;
	if (k > 100){
		break;
	}

	document.write("muuttujan a arvo on ",a,"<br>");
	document.write("muuttujan k arvo on ",k,"<br>");
}


Tutustu artikkelin muihin osiin:
»»» JavaScript »»» Ohjausrakenteet 1: If-else
»»» JavaScript »»» Ohjausrakenteet 2: For-toistolause
»»» JavaScript »»» Ohjausrakenteet 3: While-toistolause
»»» JavaScript »»» Ohjausrakenteet 4: With-lause

Tallenna tämä sivu kirjanmerkkeihin!

 

2kmediat.com, ©2000-2008 Koulutus- ja konsultointipalvelu KK Mediat.
Tekijänoikeuksia koskeva tiedonanto | Tietosuojalausunto | Sivukartta