CONTATTACI

Blog

Developer che ha tra le mani il logo di javascript con robottino sulla spalla

Linguaggio Javascript che differenza c’è tra Promise e Async-Await

Il linguaggio JavaScript è una risorsa fondamentale nel mondo della programmazione web, essenziale per lo sviluppo di applicazioni web dinamiche. Imparare JavaScript è cruciale comprendere alcune delle sue caratteristiche principali, tra cui le Promises e l’utilizzo di Async/Await. In questo articolo, esploreremo le differenze tra questi due costrutti, fornendo una visione approfondita della sintassi JavaScript e delle funzioni coinvolte nell’utilizzo di questa pratica.

Sintassi JavaScript e Programmazione JavaScript

La sintassi JavaScript è la chiave di accesso per qualsiasi aspirante sviluppatore web. Come tutti i linguaggi di programmazione, JS possiede la sua sintassi che è necessario conoscere per esercitarsi con il linguaggio. Comprendere la logica di base di JavaScript è essenziale per scrivere codice efficiente. Nel percorso di apprendimento del linguaggio JavaScript, si incontrano concetti come funzioni, oggetti e le strutture di controllo del flusso che formano il tessuto del linguaggio.

Promise in JS

Le Promise sono una caratteristica importante di JavaScript, introdotta per gestire operazioni asincrone in modo più pulito e leggibile. Una Promise rappresenta un valore che può essere disponibile ora, in futuro o mai. La sintassi di base di una Promise include i seguenti tre stati: pending (in attesa), fulfilled (se viene invocato con successo) e rejected (rifiutato a causa di un errore). Utilizzando le Promise, è possibile eseguire operazioni asincrone in modo più ordinato, evitando callback, eseguendo le cose nell’ordine naturale e migliorando la gestione degli errori. 

La Promise una volta restituita, oltre allo stato, fornisce un’altra proprietà chiamata result, inizialmente undefined, poi cambia in value, se viene invocato resolve(value) o in error, se viene invocato reject(error).

 

 1. const myPromise = new Promise((resolve, reject) => {
 2.   // Operazioni asincrone
 3.   if (operazioneRiuscita) {
 4.     resolve('Successo!');
 5.   } else {
 6.     reject('Errore!');
 7.   }
 8. });
 9.  
10. myPromise
11.   .then((result) => console.log(result))
12.   .catch((error) => console.error(error));

Async/Await in JavaScript

Async/Await possiede una sintassi introdotta in ECMAScript 2017, che semplifica ulteriormente la gestione delle Promises. Questa sintassi è particolarmente utile nel rendere il codice asincrono più leggibile e simile al codice sincrono. L’uso di Async/Await rende più facile per i programmatori gestire sequenze di operazioni asincrone senza creare una catena di Promises concatenate, scrivendo codice simile a quello.

Async/Await usa solo due keyword nella sintassi JavaScript: async and await

La prima, viene utilizzata per dichiarare che una particolare funzione è asincrona. Await attende l’esecuzione del blocco di codice della funzione asincrona finché una Promise non viene fullfiled o rejected.

 

async function esempioAsync() {
2.   try {
3.     const result = await myAsyncFunction();
4.     console.log(result);
5.   } catch (error) {
6.     console.error(error);
7.   }
8. }

Differenze Chiave tra Promise e Async/Await

  • Sintassi più pulita: Async/Await usa una sintassi più semplice, rendendo il codice asincrono più simile al codice sincrono rispetto all’utilizzo di Promises.
  • Gestione degli errori: Async/Await semplifica la gestione degli errori utilizzando il blocco try-catch, rendendo più chiaro il flusso di controllo quando si verificano errori.
  • Lettura del codice: Async/Await rende il codice più leggibile, in quanto evita la necessità di concatenare Promises usando then e catch.

 

Sia Promises che Async/Await sono potenti strumenti messi a disposizione di ogni sviluppatore JavaScript. Imparare JavaScript davvero, vuol dire approfondire la programmazione JavaScript e, in quest’ottica, comprendere le differenze tra Promises e Async/Await diventa cruciale per scrivere codice più leggibile, manutenibile ed efficiente. La scelta tra le due dipende spesso dalle esigenze specifiche del progetto e dalle preferenze personali, ma entrambe offrono soluzioni valide per gestire operazioni asincrone in modo efficace.

Vuoi saperne di più sul linguaggio Javascript? Consulta la nostra guida Javascript in italiano

Articoli correlati

Il linguaggio HTML (Hypertext Markup Language) è uno dei più conosciuti e diffusi: lo si trova infatti praticamente in tutte le pagine web esistenti. È una scelta popolare tra i principianti che si…

Seguici su Facebook

Vuoi entrare nel mondo della programmazione?

Scopri di più sui nostri corsi!

Chiamaci al numero verde

Contattaci su WhatsApp

Contattaci senza impegno per informazioni sul corso

Pagamento rateale

Valore della rata: A PARTIRE DA 115 €/mese.

Esempio di finanziamento 

Importo finanziato: € 2440 in 24 rate da € 115 – TAN fisso 9,55% TAEG 12,57% – importo totale del credito € 2841.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/01/2024 al 31/12/2024.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

*In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Pagamento rateale

Valore della rata: A PARTIRE DA 210 €/mese.

Esempio di finanziamento  

Importo finanziato: € 4500 in 24 rate da € 210,03 – TAN fisso 9,68% TAEG 11,97% – importo totale del credito € 5146,55.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/01/2024 al 31/12/2024.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Contattaci senza impegno per informazioni sul corso

Scopriamo insieme se i nostri corsi fanno per te. Compila il form e aspetta la chiamata di uno dei nostri consulenti.