Sobes.tech
Junior

Kokius for ciklus tipus žinote JavaScript?

sobes.tech AI

Atsakymas iš AI

JavaScript'e yra keletas for ciklų rūšių:

  • for (klasikinis): naudojamas skaitmeniniam diapazonui pereiti arba atlikti tam tikrą veiksmą nurodytą kartų skaičių:

    // Pereiti skaitmeniniu diapazonu
    for (let i = 0; i < 5; i++) {
      console.log(i); // 0, 1, 2, 3, 4
    }
    
  • for...in: pereina raktus (savybes) objektų, įskaitant prototipo savybes. Nerekomenduojama naudoti masyvams dėl galimų tvarkos ir neskaitinių savybių problemų:

    const obj = { a: 1, b: 2, c: 3 };
    for (const key in obj) {
      console.log(`${key}: ${obj[key]}`);
      // a: 1
      // b: 2
      // c: 3
    }
    
    const arr = ['apple', 'banana', 'orange'];
    for (const index in arr) {
      console.log(index); // 0, 1, 2 (raktai šiuo atveju - indeksai)
    }
    
  • for...of: pereina reikšmes iteruojamuose objektuose, tokiuose kaip masyvai, eilutės, Map, Set, TypedArray ir argumentai. Rekomenduojama naudoti masyvams:

    const arr = ['apple', 'banana', 'orange'];
    for (const element of arr) {
      console.log(element);
      // apple
      // banana
      // orange
    }
    
    const str = "hello";
    for (const char of str) {
      console.log(char);
      // h
      // e
      // l
      // l
      // o
    }
    

Lyginimo lentelė:

ciklas Paskirtis Apdorojami elementai Rekomenduojama naudoti
for Pereiti skaitmeninį diapazoną, kartoti Nustatytas skaičius Bendri ciklai
for...in Pereiti raktus (savybes) objektuose Raktai (savybės) Objektai
for...of Pereiti reikšmes Reikšmės Masyvai, eilutės, Map, Set