有沒有辦法在給定的 url 上使用 ajax“GET”方法迭代 api?我有一系列包含資料的等級,我正在嘗試使用 for 回圈來訪問資料。api的結構如下:
{
"top_5":{
"rank_1": [
123,
456,
],
"rank_2": [
123,
456,
],
}
}
我在 html 中的 ajax 呼叫是這樣寫的:
<script>
for (let i = 1; i < 6; i ) {
$.ajax({
method: "GET",
url: '/refunds/api',
success: function(data){
metric = data.top_5.rank_1
myDiv = 'myChart' i
barChart()
},
error: function(error_data){
console.log("error")
console.log(error_data)
}
})
}
</script>
該回圈用于生成一個唯一的 div id,但現在我被困在嘗試設計metric變數以便它是動態的并data.top_5.rank_i 1在每個回圈上迭代。我想我需要使用地圖功能,但我不確定我將如何實作它。任何幫助,將不勝感激。
uj5u.com熱心網友回復:
我相信
metric = data.top_5["rank_" i]
可以作業。它稱為括號表示法,當您需要使用變數名訪問字典/物件時會很有用。
metric = data["top_5"]["rank_" i]
例如也可以。
metric = data.top_5."rank_" i
不起作用,因為口譯員不知道該怎么做。對于點符號,它需要像這樣輸入
metric = data.top_5.rank_0
此外,我注意到您正在進行 6 次 api 呼叫,我相信您只能進行 1 次 api 呼叫(應該會提高性能)。這將是修改:
<script>
$.ajax({
method: "GET",
url: '/refunds/api',
success: function(data){
for (let i = 1; i < 6; i ) {
metric = data.top_5["rank_" i];
myDiv = 'myChart' i;
barChart();
}
},
error: function(error_data){
console.log("error");
console.log(error_data);
}
});
</script>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/516027.html
標籤:json阿贾克斯api
