𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁 𝗦𝗶𝗻𝗰𝗿𝗼𝗻𝗼 𝗲 𝗔𝘀𝗶𝗻𝗰𝗿𝗼𝗻𝗼

JavaScript viene eseguito su un singolo thread. Ciò significa che esegue una cosa alla volta. È necessario capire come gestisce i task per scrivere codice efficiente.

JavaScript Sincrono

Il codice sincrono viene eseguito riga per riga. Ogni task attende che il precedente sia terminato. Questo viene chiamato blocking. Se un task richiede molto tempo, l'intero programma si ferma.

JavaScript Asincrono

Il codice asincrono viene eseguito in modo indipendente. I task non bloccano gli altri pezzi di codice mentre sono in attesa. Questo viene chiamato non-blocking. Il task viene avviato in background e ti notifica quando è terminato.

Tre modi per gestire i task asincroni:

  1. Callbacks: Una funzione che viene eseguita dopo che un task è terminato.
  2. Promises: Un oggetto che rappresenta il completamento o il fallimento di un'operazione.
  3. Async/Await: Il metodo più pulito. Fa apparire il codice asincrono come codice sincrono senza bloccare il thread.

Operazioni asincrone comuni:

L'Event Loop rende tutto questo possibile. Utilizza la Call Stack, le Web APIs e la Callback Queue per gestire più task contemporaneamente.

Riassunto:

Fonte: https://www.geeksforgeeks.org/javascript/synchronous-and-asynchronous-in-javascript/ Fonte: https://www.w3schools.com/js/js_asynchronous.asp Fonte: https://medium.com/@mohdtalib.dev/what-is-synchronous-and-asynchronous-in-javascript-07adb7b4cc5f

Post completo: https://dev.to/raja_b_0c9d242e2c26cf063b/javascript-synchronous-and-asynchronous-2a69