Sobes.tech
Junior

Jakie rodzaje pętli for znasz w JavaScript?

sobes.tech AI

Odpowiedź od AI

W JavaScript istnieje kilka odmian pętli for:

  • for (klasyczny): Używany do iteracji po zakresie liczbowym lub wykonywania działania określoną liczbę razy.

    // Iteracja po zakresie liczbowym
    for (let i = 0; i < 5; i++) {
      console.log(i); // 0, 1, 2, 3, 4
    }
    
  • for...in: Przechodzi przez klucze (właściwości) enumerowalnych właściwości obiektu (w tym właściwości prototypu). Nie zaleca się używania do iteracji po tablicach ze względu na potencjalne problemy z kolejnością i enumeracją właściwości nie-numerycznych.

    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 = ['jabłko', 'banan', 'pomarańcza'];
    for (const index in arr) {
      console.log(index); // 0, 1, 2 (klucze w tym przypadku to indeksy)
    }
    
  • for...of: Przechodzi przez wartości iterowalnych obiektów, takich jak tablice, łańcuchy, Map, Set, TypedArray i argumenty. Zalecany do iteracji po tablicach.

    const arr = ['jabłko', 'banan', 'pomarańcza'];
    for (const element of arr) {
      console.log(element);
      // jabłko
      // banan
      // pomarańcza
    }
    
    const str = "cześć";
    for (const char of str) {
      console.log(char);
      // c
      // z
      // e
      //ść
    }
    

Tabela porównawcza:

Pętla Cel Elementy do iteracji Zalecane do
for Iteracja po zakresie liczbowym, powtarzanie Określona liczba razy Ogólne pętle
for...in Iteracja po kluczach (właściwościach) obiektów enumerowalnych Klucze (właściwości) Obiekty
for...of Iteracja po wartościach obiektów iterowalnych Wartości Tablice, łańcuchy, Map, Set