从函数返回D3创建对象

时间:2014-12-03 17:16:06

标签: javascript oop object d3.js

如果我调用此函数使用嵌套数据调用buildFormOptions,它会正确传递对象,然后在buildFormOptions中可用。

function buildNestedData(){     
             d3.csv(fdistricts, function(error, csv_data) {
                 nested_data = d3.nest()
                  .key(function(d) { return d.Dimension;})
                  .key(function(d) { return d.Indicator;})
                  .key(function(d) { return d.SubIndicator;})
                  .entries(csv_data);
                  buildFormOptions(nested_data);                
                }); 
        }

但是,如果我调用函数buildNestedData()和buildNestedData看起来像这样:

var nested_data; // set global
    function buildNestedData(){     
             d3.csv(fdistricts, function(error, csv_data) {
                 nested_data = d3.nest()
                  .key(function(d) { return d.Dimension;})
                  .key(function(d) { return d.Indicator;})
                  .key(function(d) { return d.SubIndicator;})
                  .entries(csv_data);  
                  return nested_data;       
                }); 
        }

它没有返回对象,我尝试了很多选项,包括移动return语句:

return d3.nest()
return d3.csv(

我尝试将函数设置为变量:

buildNestedData = function(){  ...

有什么想法吗?

0 个答案:

没有答案