Asincrone parola chiave se utilizzata dalla definizione di una funzione rende la funzione restituire a Promettere, Mentre Aspetta La funzione fa aspettare la funzione asincrima che venga restituita al suo interno. Per comprendere l'uso dell'asincronizzazione e attendere le funzioni devi avere una comprensione acuta di come le promesse funzionano in JavaScript.
Async e Asvet sono un concetto JavaScript di livello avanzato, ecco perché lo impareremo attraverso vari esempi e lo capiremo passando attraverso la linea di esempio per riga.
Esecuzione sequenziale in javascript
JavaScript è un linguaggio sequenzialmente o possiamo dire un linguaggio di scripting a thread singolo. Il codice è invocato riga per linea in modo procedurale.
Considera le righe del codice digitato di seguito:
funzione hello ()Osserva l'output sulla console come:
Come puoi vedere, le funzioni o le linee invocate prima sono state sempre finite prima. Il motivo per mostrarti un semplice esempio come questo era farti notare quando la sequenza di esecuzione cambierà con Async attesa e promette.
Asincrone/ attesa in azione
Considera una funzione semplice che restituisce un po 'di testo, come:
funzione getUSers ()L'output del seguente codice è:
Come possiamo vedere la funzione restituita come la stringa che dice, utenti. Proviamo a mettere la parola chiave asincrone prima della definizione della funzione come:
funzione asincrica getUSers ()Ora, sulla tua console vedrai che questa volta la funzione ha restituito una promessa che aveva lo stato "adempiuto":
Ma nei casi in cui si sta recuperando alcuni dati da una API REST o da qualsiasi API Web, questa promessa cambierà più stati, da pendenti a soddisfatti/rifiutati. In tali casi, aspettiamo il ritorno del risultato della promessa usando il Aspetta parola chiave.
Per questo, useremo l'API Fetch e recuperare le informazioni sugli utenti dall'API.github/utenti "con le seguenti righe di codice:
funzione asincrica getUSers ()Ci sono molte cose da spiegare qui:
In questo modo, l'intero programma uscirà dalla normale esecuzione sequenziale e implementerà un'esecuzione asincrona del codice utilizzando promesse e asincrone/attesa Parole chiave.
Lo snippet completo del codice è come:
funzione asincrica getUSers ()Nota: La linea "elenco.Quindi ((utente) => console.log (utente));"Non verrà eseguito fino alla funzione getusers si occupa di tutte le promesse e restituisce il valore, anche qui l'esecuzione sequenziale cambierà.
Ora, se esegui questo programma come script di un file HTML, vedrai il seguente output sulla tua console:
Esamina attentamente l'output e noterai il flusso di esecuzione come:
È così che si altera l'esecuzione sequenziale e implement l'esecuzione asincrona
Conclusione
Asincrone E Aspetta Le parole chiave vengono utilizzate per implementare l'esecuzione asincrona del codice JavaScript con l'aiuto delle promesse. Asincrone parola chiave se utilizzata prima della dichiarazione di una funzione converte quella funzione in un funzione asincrona e il suo tipo di ritorno cambia in una promessa. Mentre Aspetta è una parola chiave che attende che una promessa venga ricevuta all'interno di un funzione asincrona. Asincrone/attesa Aiutaci a scrivere promesse in un modo molto più bello e ordinato che è più leggibile e comprensibile.