如何将获取请求的响应存储在变量中


var Data;
fetch('url')
.then(data => data.json())
.then(success => Data = success);

while(typeof Data === 'undefined'){
console.log("data not retrived")
}

上面的代码让我陷入了一个永远的循环,我不明白为什么,有人能解释一下吗?

这是因为javascript的异步、非阻塞行为。由于它不知道从服务器获得响应需要多长时间,所以它不会等待,而是会执行程序的下一个while循环部分。这就是为什么"Data"变量的值将保持"未定义"并导致无限循环的原因。

相关内容

  • 没有找到相关文章

最新更新