javascript - 如何在d3中加载json对象后访问它

标签 javascript json d3.js

我使用 d3.json 加载了一个 json 对象,并将加载的 json 文件分配给一个全局变量,但是当我将全局变量打印到控制台时,它返回未定义,但是当我在 chrome 控制台中输入全局变量时,它返回我需要它做什么。本质上,我只是希望加载 json 对象,以便能够在 d3.json 函数之外使用它。这似乎是一个相对简单的任务,但我是 js/d3 新手,因此非常感谢任何帮助!

谢谢!

下面提供了代码

    <script type = "text/javascript" source='https://d3js.org/d3.v4.min.js'>

var gapminder;

d3.json("D3_jsondata.json", function(data){
  gapminder = data;
});
//above prints in console when i type in gapminder

console.log(gapminder);//prints as 'undefined' in Chrome's console
</script>

最佳答案

调用 .json() 可以获得尚未加载的 http 响应正文的 promise 。尝试在 json 的回调中开始渲染!

关于javascript - 如何在d3中加载json对象后访问它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44102093/

相关文章:

javascript - d3js 强制布局未按预期工作

javascript - 动态创建的 d3 图表内的 Angular ng-click 不起作用

javascript - 在数字数组中生成有效的数字组合

javascript - 为什么我的 d3 数据在 body 之后输出?

javascript - 将 AJAX JSON 对象复制到现有对象中

html - 当我在我的电脑上运行此搜索可折叠树代码时,它不起作用?

javascript - 将 child 分成 block 和 "react/no-array-index-key"

javascript - Alasql 未定义

json - nodejs JSON解析.issue

java - 我可以在同一个操作中使用多种方法吗?