在控制台上运行下面的代码,我得到了一个对象数组。
fetch('https://api.github.com/users/chriscoyier/repos')
.then(response => response.json())
.then(data => {
// Here's a list of repos!
console.log(data)
});
以后如何访问数据?例如,如果我想在 promise 解决后 console.log data[0].archive_url?但这会出现错误“未捕获的 ReferenceError:数据未定义”。我如何访问该对象数组?
最佳答案
var myGlobalVar;
fetch('https://api.github.com/users/chriscoyier/repos')
.then(response => response.json())
.then(data => {
console.log(data);
myGlobalVar = data;
});
此请求完成后(一旦您看到控制台输出),变量 myGlobalVar
中的数据现在可用,您可以在控制台上使用。您还可以使用浏览器的调试器在回调函数中设置断点,并从那里直接访问 data
。
请注意,这在实际代码中不起作用,这仅对交互式控制台有用:How do I return the response from an asynchronous call?
关于javascript - 使用 fetch 从 API 获取数据,如何在 promise 解决后访问数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45431710/