Lavorare con la ricorsione in JavaScript

Nella programmazione esiste un concetto chiamato ricorsione - è quando una funzione chiama se stessa. Diamo un'occhiata a un esempio. Visualizziamo i numeri da 1 a 10 utilizzando la ricorsione:

javascriptlet i = 1;

function func(){
  console.log(i);
  i++;
  
  if (i <= 10){
    func(); // qui la funzione chiama se stessa
  }
}
func();

Discutiamo come funziona questo codice.

Abbiamo una variabile globale i e una funzione func, all'interno della quale viene visualizzato in console il contenuto della variabile i, e poi viene incrementato di ++.

Se la nostra variabile i è minore o uguale a 10, la funzione viene richiamata nuovamente. Poiché la variabile i è globale, ad ogni nuova chiamata della funzione in essa sarà presente il valore della variabile i impostato durante la chiamata precedente.

Il risultato è che la funzione continuerà a chiamare se stessa finché i non diventerà maggiore di 10.

Si noti che nel nostro caso non è possibile avviare la funzione senza if - se si facesse così, si otterrebbe una chiamata infinita di funzioni.