javascript - 将 XHR 请求存储到 javascript 变量中
问题描述
这是到目前为止的javascript:
var req = new XMLHttpRequest;
req.open('get', 'https://jsonplaceholder.typicode.com/todos', true);
req.responseType = 'json';
req.send();
在 chrome 开发工具上,我可以看到响应是我想要的项目,所以请求应该没问题。它是状态 200 和状态 4。
当我尝试写作时,问题就出现了
var myJSON = req.response;
当我将此记录到控制台时,它会以“null”响应。但是,如果我通过开发工具将值重新分配给完全相同的值,我会得到我的 JSON 对象。有人可以向我解释为什么以及如何解决这个问题吗?
解决方案
尝试就绪状态
var req = new XMLHttpRequest;
req.open('get', 'https://jsonplaceholder.typicode.com/todos', true);
req.responseType = 'json';
req.send();
req.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
console.log(this.response);
var myJSON = this.response;
}
};
推荐阅读
- javascript - 浏览器最小化时脚本性能下降
- python - 如何迭代,以便在字典中添加唯一值(Python)
- angular - 为 Angular 创建 mat-tree 和一些麻烦
- c# - Enumerable.Repeat 在初始化 List<> 时使用 for 循环表现不佳
- git - GIT - 如何将发行说明放入标签
- angular - 如何动态绑定img和video标签中的图像和视频
- pytorch - 预期输入 batch_size (18) 与目标 batch_size (6) 匹配
- centos - 找不到 glibc 的调试信息
- pytorch - Pytorch 中的所有算子都支持反向传播吗?
- r - 在 rmarkdown 文件的 html 输出中在 for 循环内渲染 tmap 映射