javascript - 使用 fetch 后数组值变得未定义
问题描述
当我想获取数组值时,它变得未定义。我在做什么磨损以及如何解决它?
var cars = [4, 8];
for (i = 0; i < cars.length; i++) {
fetch("http://example.com?id=" + cars[i], {
"credentials": "include",
"headers": {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; rv:68.0) Gecko/20100101 Firefox/68.0",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language": "en-US,en;q=0.5",
"Upgrade-Insecure-Requests": "1",
"Cache-Control": "max-age=0"
},
"method": "GET",
"mode": "cors",
})
.then(response => response.text())
.then(str => {
var text = str.split('yesyes')[1];
var abc = text.split('nono')[0];
document.write(abc + " = " + cars[i]);
})
}
解决方案
这是关于关闭。尝试这个:
for (var i = ...) {
(function (x) {
fetch("..." + cars[x], ...
})(i);
}
推荐阅读
- c# - 如何返回对静态类的引用
- php - 按 hasMany 关系对 laravel 集合进行排序
- javascript - React ComponentDidMount 内部的画布在窗口调整大小时重绘
- google-app-engine - 如何在 Google Cloud Shell 中的目录之间移动单个文件
- php - 通过更新 php 代码重新启动 apache 时出现问题
- java - 从数据库中搜索数据不搜索java中的术语?
- sql-server - 如何按一列排序,但根据不同的非数字列进行排名?
- java - 在 gitlab-ci 中运行 selenium 测试用例时获取 chrome 无法访问错误。似乎无头 chrome 存在一些问题,任何人都可以帮助解决这个问题
- php - 如何正确设置 session.gc_lifetime?
- json - 我可以将 GraphQL 字段定义为任何有效的 json 吗?