Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele For-silmukan Hallinta Javascriptissä | Datan Läpikäynti JavaScriptissä
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Johdanto JavaScriptiin

bookFor-silmukan Hallinta Javascriptissä

for-silmukka on yleinen tapa toistaa koodia. Se käyttää kolmea osaa sulkujen sisällä:

for (Initialization; Condition; Increment/Decrement) {
  // code block
}

Mitä kukin osa tarkoittaa:

  • Alustus: luo silmukan laskurin (suoritetaan kerran);
  • Ehto: tarkistetaan ennen jokaista iteraatiota;
  • Inkrementti/Dekrementti: päivittää laskurin jokaisen silmukan jälkeen.
Note
Huom

Iteraatio tarkoittaa silmukan rungon yhtä täydellistä suorituskertaa.

123
for (let i = 1; i < 5; i++) { console.log("Loop iteration:", i); };
copy
  • let i = 1: alustus;
  • i < 5: ehto;
  • i++: inkrementointi;
  • console.log(...): silmukan runko.

Toistuu, kunnes ehto ei enää täyty.

Myös dekrementtiä voidaan käyttää for-silmukassa, kuten tässä:

123
for (let i = 15; i > 10; i--) { console.log("i =", i); }
copy

for-silmukan laskuri on ainutlaatuinen omassa lohkossaan, joten laskurin nimen ei tarvitse olla ristiriidassa muiden muuttujien kanssa:

12345678
let i = 2077; console.log("(global) i =", i); for (let i = 0; i < 4; i++) { console.log("(for) i =", i); } console.log("(global) i =", i);
copy

Erilaisia lausekkeita inkrementti-/dekrementti-operaatioille voidaan myös käyttää:

123
for (let i = 0; i < 40; i += 7) { console.log("i =", i); };
copy

for- ja while-silmukoiden vertailu

Kun vertaillaan for- ja while-silmukoita, for-silmukka on usein yksinkertaisempi ja tiiviimpi. Tässä esimerkki vastaavista silmukoista:

1234567891011
// `while` let a = 1; while (a <= 3) { console.log("While:", a); a++; } // `for` for (let i = 1; i <= 3; i++) { console.log("For:", i); }
copy

for-silmukka on yleensä lyhyempi ja pitää laskurin omassa lohkossaan.

question mark

Tavoitteena on tulostaa jokainen kesäolympialaisten vuosi vuosilta 2000–2016, mukaan lukien. Mikä ehto tulee sijoittaa silmukkaan?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 3

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

bookFor-silmukan Hallinta Javascriptissä

Pyyhkäise näyttääksesi valikon

for-silmukka on yleinen tapa toistaa koodia. Se käyttää kolmea osaa sulkujen sisällä:

for (Initialization; Condition; Increment/Decrement) {
  // code block
}

Mitä kukin osa tarkoittaa:

  • Alustus: luo silmukan laskurin (suoritetaan kerran);
  • Ehto: tarkistetaan ennen jokaista iteraatiota;
  • Inkrementti/Dekrementti: päivittää laskurin jokaisen silmukan jälkeen.
Note
Huom

Iteraatio tarkoittaa silmukan rungon yhtä täydellistä suorituskertaa.

123
for (let i = 1; i < 5; i++) { console.log("Loop iteration:", i); };
copy
  • let i = 1: alustus;
  • i < 5: ehto;
  • i++: inkrementointi;
  • console.log(...): silmukan runko.

Toistuu, kunnes ehto ei enää täyty.

Myös dekrementtiä voidaan käyttää for-silmukassa, kuten tässä:

123
for (let i = 15; i > 10; i--) { console.log("i =", i); }
copy

for-silmukan laskuri on ainutlaatuinen omassa lohkossaan, joten laskurin nimen ei tarvitse olla ristiriidassa muiden muuttujien kanssa:

12345678
let i = 2077; console.log("(global) i =", i); for (let i = 0; i < 4; i++) { console.log("(for) i =", i); } console.log("(global) i =", i);
copy

Erilaisia lausekkeita inkrementti-/dekrementti-operaatioille voidaan myös käyttää:

123
for (let i = 0; i < 40; i += 7) { console.log("i =", i); };
copy

for- ja while-silmukoiden vertailu

Kun vertaillaan for- ja while-silmukoita, for-silmukka on usein yksinkertaisempi ja tiiviimpi. Tässä esimerkki vastaavista silmukoista:

1234567891011
// `while` let a = 1; while (a <= 3) { console.log("While:", a); a++; } // `for` for (let i = 1; i <= 3; i++) { console.log("For:", i); }
copy

for-silmukka on yleensä lyhyempi ja pitää laskurin omassa lohkossaan.

question mark

Tavoitteena on tulostaa jokainen kesäolympialaisten vuosi vuosilta 2000–2016, mukaan lukien. Mikä ehto tulee sijoittaa silmukkaan?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 3
some-alt