Некоторые небольшие изменения, чтобы он работал без вызова API, но вы захотите получить доступ к правильному индексу в вашем цикле. Я не знаю, какой именно вывод вы хотите получить, но в этом случае я просто соединил все значения в массиве.
Кроме того, необходимо установить innerHTML
, как только все значенияизвлекаются из API, поэтому я бы даже предложил сделать это, когда цикл завершится, или какое-либо другое событие типа «done».
Кроме того, вы можете использовать Promise.all
вместо цикла, что япошел бы с лично.
var fromAmt = 100;
var fromOOP = 50;
var fromGM = 50;
var fromCur = "USD"
var toCur = ["USD", "EUR", "INR", "GBP", "SGD"];
var adjAmt = [];
async function getConversionAsync(fcur, tcur, amt) {
let response = await sampleRequest()
/* let data = await response.json() */
return response;
}
for (i = 0; i < toCur.length; i++) {
const data = getConversionAsync(fromCur, toCur[i].toString(), fromAmt).then(data => {
display(data)
})
}
function display(thing) {
adjAmt.push(thing);
document.getElementById("something").innerHTML = adjAmt.join(', ')
}
function sampleRequest() {
return new Promise((resolve, reject) => {
resolve(Math.round(Math.random() * 1000))
})
}
<div id="something"></div>