在异步函数中添加return语句以返回值
示例代码:
async function getData() { try { const response = await fetch('https://jsonplaceholder.typicode.com/todos/1'); const data = await response.json(); return data; } catch(error) { console.error(error); } }
const result = getData(); console.log(result); //undefined
在上述代码中,使用Async Await方式获取数据,但是尝试打印返回值,却得到了一个undefined。这是因为虽然函数会返回数据,但是没有添加return语句来明确返回值。
为了解决这个问题,需要在函数中添加return语句,将要返回的数据作为参数传递给它。代码如下:
async function getData() { try { const response = await fetch('https://jsonplaceholder.typicode.com/todos/1'); const data = await response.json(); return data; } catch(error) { console.error(error); } }
const result = await getData(); console.log(result); // {userId: 1, id: 1, title: "delectus aut autem", completed: false}
在该示例中,使用了await关键字来等待异步函数返回结果,并添加了return语句来返回数据。打印结果后,可以得到正确的返回值。
上一篇:Asyncawait问题