未定义不是函数错误d3js

时间:2017-01-11 17:48:01

标签: javascript d3.js

我试图将自己的数据加载到此d3.js可视化中,但我不断收到错误Undefined is not a function。唯一的区别是,我没有像他们那样定义freqData,而是定义我从数据文件加载

var freqData = d3.json("//sjs72/Users/ksdf/file.json", function(fdata) {
  console.log(fdata[0]);
});

它发生在

fData.forEach(function(d){d.total=d.freq.low+d.freq.mid+d.freq.high;});

有人能帮我理解我出错的地方吗?

编辑:我拨打的电话是仪表板(' #spaceboard',freqData);函数仪表板采用参数fData,在这种情况下我将freqData加载到

更新

我更改了我的变量定义,结果代码看起来像

var freqData;
  function doSomethingWithData() {
  console.log(freqData);
}

d3.json("//sjs72/Users/ksdf/file.json", function(dataFromServer)    {
  freqData = dataFromServer;
  doSomethingWithData();
}

dashboard('#dashboard',freqData);

但现在我只是得到了错误

Uncaught SyntaxError: Unexpected identifier

在我的剧本的最后一行

1 个答案:

答案 0 :(得分:1)

您错过了d3.json()来电的右括号。这可能很适合你。更正后的代码:

var freqData;
  function doSomethingWithData() {
  console.log(freqData);
}

d3.json("//sjs72/Users/ksdf/file.json", function(dataFromServer)    {
    freqData = dataFromServer;
    doSomethingWithData();
  }
); // Added this here
dashboard('#dashboard',freqData);