javascript - 如何将值从异步响应数据推送到数组?
问题描述
我正在开发一个客户端-服务器项目。当我用 HTML 编写脚本时。我很难推送我必须排列的数据。以下是源代码片段:
var latitude = [];
async function getapi(url){
const response = await fetch(url);
var data = await response.json();
show(data);
return data;
}
getapi(api_url);
function show(data){
for (r in data){
latitude.push(data[r]['DepLat'];
var dep_marker = new mapboxgl.Marker({color: 'red'})
.setLngLat([data[r]['DepLng'],data[r]['DepLat']])
.addTo(map);
var arr_marker = new mapboxgl.Marker({color: 'cyan'})
.setLngLat([data[r]['ArrLng'],data[r]['ArrLat']])
.addTo(map);
}
}
我在latitude
调用 show(data) 后得到的结果仍然是空的。谢谢你。
解决方案
你有一个错字。您推送值的行缺少右括号。
function show(data){
for (r in data){
// your code says .push(
latitude.push(data[r]['DepLat'];
// rest of your code
}
这样做
function show(data){
for (r in data){
latitude.push(data[r]['DepLat']);
// rest of your code
}
推荐阅读
- python - 如何在嵌套外键上使用 Django ORM 进行多个内连接
- testing - Groovy 脚本错误:解析 json 时没有此类属性
- sql - 努力将 Varchar 转换为浮点数
- c# - 对 IN 语句使用具有大量值的 OracleDataReader
- c - 关于无符号和整数表达式的困惑
- c - C 中从 1 到 N 的内存分配
- mysql - Mysql `OR` 条件不适用于 JOIN
- spring - 如何在 Spring 4.1.7 中将模拟注入自定义 ConstraintValidator?
- encryption - RSA 在加密句子时如何工作?
- mysql - 显示订购的所有产品名称列表以及客户的名字和姓氏