gpt4 book ai didi

javascript - 使用 d3.json() 获取数据不起作用,而使用 JS async await 则可以。为什么?

转载 作者:行者123 更新时间:2023-11-30 19:29:47 26 4
gpt4 key购买 nike

<分区>

我正在尝试从 url 获取一些数据以在 d3.js 中使用。我无法使用 d3.json(url, callback) 接缝获取数据。虽然当我使用 (ES8) async await 函数时它工作正常。

谁能帮我理解为什么?我究竟做错了什么?谢谢!

d3.json() 示例:

d3.json("https://raw.githubusercontent.com/FreeCodeCamp/ProjectReferenceData/master/GDP-data.json", json => {

const data = json.data; // array of dates and values
const lowestVal = d3.min(data, d => d[1]);
const highestVal = d3.max(data, d => d[1]);

console.log(lowestVal);
console.log(highestVal);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.7.0/d3.min.js"></script>

异步等待示例:

(async function() {
try {
const response = await fetch("https://raw.githubusercontent.com/FreeCodeCamp/ProjectReferenceData/master/GDP-data.json");
if (response.ok) {
const jsonResponse = await response.json();

const data = jsonResponse.data; // array of dates and values
const lowestVal = d3.min(data, d => d[1]);
const highestVal = d3.max(data, d => d[1]);

console.log(lowestVal);
console.log(highestVal);
}
} catch(error) {
console.log(error);
}
})();
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.7.0/d3.min.js"></script>

我知道这里也应该有一些 CORS 问题。但我目前正在研究 CodePen。所以 CORS 在这里不是问题。

非常感谢任何见解。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com