Przejdź do treści

Centrum Kształcenia Zawodowego i Ustawicznego w Mrągowie

JS: Zagnieżdżone pętle

piątek,

JS: Zagnieżdżone pętle

Zagnieżdżone pętle są bardzo potężnym narzędziem, ale należy ich używać ostrożnie, ponieważ mogą one wpływać na wydajność, szczególnie przy dużych zbiorach danych lub skomplikowanych algorytmach. Często są wykorzystywane podczas wykonywania operacji na danych o strukturze wielowymiarowej jak tablice wielowymiarowe.

Przykłady wykorzystania zagnieżdżonych pętli

Przetwarzanie tablic wielowymiarowych

Zagnieżdżone pętle są idealne do iteracji przez tablice wielowymiarowe (tablice tablic).

Przykład: Wyświetlanie wszystkich elementów tablicy dwuwymiarowej.

let tablicaDwuwymiarowa = [[1, 2], [3, 4], [5, 6]];
for (let i = 0; i < tablicaDwuwymiarowa.length; i++) {
    for (let j = 0; j < tablicaDwuwymiarowa[i].length; j++) {
        console.log(tablicaDwuwymiarowa[i][j]);
    }
}

Znajdowanie par liczb

Zagnieżdżonych pętli można użyć do wyszukania par liczb spełniających określone kryterium, na przykład sumujących się do konkretnej wartości.

Przykład: Znalezienie wszystkich par liczb z tablicy, które sumują się do 7.

let liczby = [1, 2, 3, 4, 5];
for (let i = 0; i < liczby.length; i++) {
    for (let j = i + 1; j < liczby.length; j++) {
        if (liczby[i] + liczby[j] === 7) {
            console.log(`Para: ${liczby[i]}, ${liczby[j]}`);
        }
    }
}

Generowanie tabel

Zagnieżdżone pętle są często stosowane do tworzenia tabel, gdzie jedna pętla iteruje przez wiersze, a druga przez kolumny.

Przykład: Tworzenie prostej tabeli mnożenia dwóch liczb.

let tabela = '<table>';
for (let i = 1; i <= 5; i++) {
    tabela += '<tr>';
    for (let j = 1; j <= 5; j++) {
        tabela += `<td>${i * j}</td>`;
    }
    tabela += '</tr>';
}
tabela += '</table>';
document.body.innerHTML = tabela;

Zagnieżdżanie pętli różnego typu

Czasami stosuje się zagnieżdżenie pętli różnych typów, na przykład pętli for wewnątrz while lub odwrotnie.

Przykład: Użycie zagnieżdżonej pętli for wewnątrz pętli while.

let i = 0;
while (i < 3) {
    for (let j = 0; j < 3; j++) {
        console.log(`i = ${i}, j = ${j}`);
    }
    i++;
}

Przetwarzanie złożonych struktur danych

Zagnieżdżone pętle mogą być wykorzystywane do przetwarzania bardziej złożonych struktur danych, takich jak obiekty zawierające tablice.

Przykład: Iteracja przez obiekt zawierający tablice.

let dane = {
    pierwsza: [1, 2, 3],
    druga: [4, 5, 6]
};

for (let klucz in dane) {
    for (let i = 0; i < dane[klucz].length; i++) {
        console.log(dane[klucz][i]);
    }
}
Artykuł: Harmonogram egzaminów maturalnych

Harmonogram egzaminów maturalnych

Artykuł: Staże w Hiszpanii

Staże w Hiszpanii

Artykuł: Conformité Européenne

Conformité Européenne

Artykuł: Display Stream Compression

Display Stream Compression

Artykuł: High Dynamic Range

High Dynamic Range

Nasze technikum

Technik informatyk

Szkoły dla dorosłych

Nasza szkoła

Pełna oferta edukacyjna

Oferta szkoły