Im Gegensatz zu regulären Funktionen nutzen asynchrone Funktionen die asynchrone Verarbeitung, sodass sie die Ausführung anhalten und fortsetzen können. Dies wirft jedoch eine Frage auf: Wie kann man die zurückgegebenen Werte abrufen?
Zunächst besteht ein üblicher Ansatz darin, Folgendes zu versuchen:
async function getData() { const data = await axios.get('https://jsonplaceholder.typicode.com/posts'); return data; } console.log(getData());
Allerdings Dieser Ansatz führt zu einem Promise {
Die Lösung besteht darin, Ihr console.log in einen asynchronen, sofort aufgerufenen Funktionsausdruck (async IIFE) einzubinden ). Es sieht so aus:
async function getData() { return await axios.get('https://jsonplaceholder.typicode.com/posts'); } (async () => { console.log(await getData()) })()
Da Axios ein Versprechen zurückgibt, können Sie die getData-Funktion vereinfachen, indem Sie async/await weglassen:
function getData() { return axios.get('https://jsonplaceholder.typicode.com/posts'); }
Und dann wickeln Sie Ihr console.log wie zuvor in das asynchrone IIFE ein:
(async () => { console.log(await getData()) })()
Durch die Verwendung von async-await in asynchronen IIFEs können Sie die Werte effektiv abrufen und protokollieren von asynchronen Funktionen zurückgegeben, wodurch das Potenzial der asynchronen Programmierung freigesetzt wird.
Das obige ist der detaillierte Inhalt vonWie geben asynchrone Funktionen mithilfe von Async-Await Werte zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!