JavaScript annidato per cicli

Harshit Jindal 12 ottobre 2023
JavaScript annidato per cicli

Questo tutorial spiega il concetto di cicli nidificati in JavaScript. Un bucle è una struttura di programmazione utilizzata per iterare attraverso una serie di dati o eseguire ripetutamente la stessa azione fino a quando non viene soddisfatta una condizione specifica o per un certo periodo di tempo senza scrivere esplicitamente il codice ancora e ancora. Un cicli for annidato è una composizione di cicli. Possiamo avere uno o più loop presenti all’interno di un loop. Il bucle annidato è chiamato bucle interno e il bucle contenente il bucle annidato è chiamato bucle esterno.

L’esecuzione inizia sempre con il bucle esterno e quindi si sposta lungo i cicli annidati. I cicli interni vengono eseguiti completamente in ogni iterazione del bucle esterno. Possiamo definire a grandi linee la sintassi per un bucle annidato come:

Outerloop {
  Innerloop {
    // statements to execute inside inner loop
  }
  // statements to execute inside outer loop
}

Il bucle può essere di qualsiasi tipo come cicli for, cicli while o bucle do-while.

Consideriamo un array 2D arr[2][3] = [[1,2],[3,4],[5,6]] e vogliamo stampare tutti gli elementi. Avremo bisogno di due loop per questo. Uno per iterare tutti i sottoarray e iterare tutti gli elementi all’interno di quei sottoarray.

function print(arr) {
  for (let i = 0; i < arr.length; i++) {
    for (let j = 0; j < arr[i].length; j++) {
      console.log(arr[i][j]);
    }
  }
  return;
}

Produzione:

1
2
3
4
5
6

Visitiamo iterare su tutti i sottoarray presenti all’interno dell’array.

  • Prima iterazione i=0:
    • Iterazione 1 del bucle interno: j=0 Stampa 1
    • iterazione del bucle interno 2: j=1 Stampa 2
  • Seconda iterazione i=1:
    • Iterazione 1 del bucle interno: j=0 Stampa 3
    • iterazione del bucle interno 2: j=1 Stampa 4
  • Terza iterazione i=2:
    • Iterazione 1 del bucle interno: j=0 Stampa 5
    • iterazione del bucle interno 2: j=1 Stampa 6
Harshit Jindal avatar Harshit Jindal avatar

Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.

LinkedIn

Articolo correlato - JavaScript Loop