【发布时间】:2021-02-21 23:12:23
【问题描述】:
我试图将异步 getData() 函数中的“carparkData”传递给 addData() 函数,但它有错误。这是 js-html-css 堆栈的一部分。希望能得到一些帮助,以便我能够从“总手数”中删除零值。提前致谢! :)
async function getData() {
try {
const response = await fetch ("https://api.data.gov.sg/v1/transport/carpark-availability");
if (response.ok) {
const data = await response.json();
const carparkData = data.items[0].carpark_data;
}
return carparkData;
} catch (error) {console.log(error);}
};
getData();
function addData() {
var table = document.getElementById("myTable")
for (var i = 0; i < carparkData.length; i++){
var x = (carparkData[i].carpark_info[0].total_lots - carparkData[i].carpark_info[0].lots_available) / (carparkData[i].carpark_info[0].total_lots)
var utiRate = Number(x).toLocaleString(undefined, { style: 'percent', minimumFractionDigits: 2 })
var row = `<tr>
<td>${carparkData[i].carpark_number}</td>
<td>${carparkData[i].update_datetime}</td>
<td>${carparkData[i].carpark_info[0].lots_available}</td>
<td>${carparkData[i].carpark_info[0].lot_type}</td>
<td>${carparkData[i].carpark_info[0].total_lots}</td>
<td>${utiRate}</td>
</tr>`
table.innerHTML += row
}
};
addTable(carparkData);
【问题讨论】:
-
const carparkData不在您的return声明范围内