与常规函数不同,异步函数利用异步处理,允许它们暂停和恢复执行。然而,这引入了一个问题:如何检索返回的值?
最初,一种常见的方法是尝试:
async function getData() { const data = await axios.get('https://jsonplaceholder.typicode.com/posts'); return data; } console.log(getData());
但是,这种方法会产生一个 Promise {
解决方案在于将 console.log 包装在异步立即调用函数表达式 (async IIFE )。看起来像这样:
async function getData() { return await axios.get('https://jsonplaceholder.typicode.com/posts'); } (async () => { console.log(await getData()) })()
由于 Axios 返回一个 Promise,你可以通过省略 async/await 来简化 getData 函数:
function getData() { return axios.get('https://jsonplaceholder.typicode.com/posts'); }
然后像以前一样将 console.log 包装在 async IIFE 中:
(async () => { console.log(await getData()) })()
通过在 async IIFE 中使用 async-await,您可以有效地检索和记录值由异步函数返回,释放异步编程的潜力。
以上是异步函数如何使用 Async-Await 返回值?的详细内容。更多信息请关注PHP中文网其他相关文章!