我正在使用fetch從api獲取數據json。工作正常,但我必須重複使用它的各種調用,因此它需要同步,否則我需要一些方法來更新接口時,每個組件的提取完成。如何使JavaScript提取同步?
function fetchOHLC(yUrl){
fetch(yUrl)
.then(response => response.json())
.then(function(response) {
alert(JSON.stringify(response.query));
var t = response.created;
var o = response.open;
var h = response.high;
var l = response.low;
var c = response.close;
return {t,o,h,l,c};
})
.catch(function(error) {
console.log(error);
});
}
var fetchData = fetchOHLC(yUrl);
alert(fetchData); // empty ?
除了使用fetch之外,還有其他方法可以實現嗎? (我不想使用jquery)。
感謝
編輯
的問題是關於獲取的API,而不是AJAX,jQuery的沒有,那麼請停止將其標記爲那些重複的問題沒有正確閱讀它。如果您仍然不得不這樣做,請停止將其與十年前的問題和答案聯繫起來,十年內會發生很多變化。
@Igor沒有,它的不同,試圖在將它們標記爲重複項之前正確地達到這兩個問題 –
我看過這個問題,它是重複的。您不理解如何獲取/使用異步調用的結果,示例中的最後兩行非常明顯。仔細閱讀所提供的答案,以更好地瞭解如何使用來自異步調用的響應,這些答案寫得很好,可以幫助您解決問題。 – Igor
@Igor請親切地閱讀jonas提供的關於這個問題的答案,看看他是如何理解這個問題並正確回答的:)我希望它能幫助你清除你的概念,並讓你理解ajax,fetch和jquery是不同的東西, –