This question already has answers here:
Why is my variable unaltered after I modify it inside of a function? - Asynchronous code reference
(6个答案)
2年前关闭。
有我的代码:
我想访问我的数组数据,但最终以undefined结束,我不知道为什么。
After reloading page
但是,它在控制台中正常工作。Working good with console.log
我已经在互联网上阅读了几个小时,但我似乎无法理解为什么它会那样工作。
调用fetch方法后,在等待服务器或您尝试获取信息的任何位置的响应时,I / O不会停止,而是在等待服务器的响应时开始执行其余代码。
(6个答案)
2年前关闭。
有我的代码:
fetch(data)
.then(blob => blob.json())
.then(newData => array.push(newData))
let be = array[0].id;
我想访问我的数组数据,但最终以undefined结束,我不知道为什么。
After reloading page
但是,它在控制台中正常工作。Working good with console.log
我已经在互联网上阅读了几个小时,但我似乎无法理解为什么它会那样工作。
最佳答案
fetch
异步运行,因此,您可以执行以下操作。
let array = [];
let be = '';
fetch(data)
.then(blob => blob.json())
.then(newData => {
array.push(newData);
be = array[0].id;
});
调用fetch方法后,在等待服务器或您尝试获取信息的任何位置的响应时,I / O不会停止,而是在等待服务器的响应时开始执行其余代码。
09-20 20:36