使用 $.getJson 分配变量

Assigning variable with $.getJson

我正在使用 nvd3 创建图表。由于我是 javascript 的新手,所以我在分配图表数据时遇到了一些问题。 当我这样分配时:

var long_short_data = [
  {
    "key": "ISP",
    "color": "#d62728",
    "values": [
      {
        "label" : "oäop" ,
        "value" : 9000
      } ,...
    ]
  },
    {
    "key": "Organization",
    "color": "#d67548",
    "values": [
      {
        "label" : "amklöericalököky" ,
        "value" : 8000
      },...
    ]
  }
];

图表显示正常。 但是当我这样分配它时:

var long_short_data = $.getJSON( "/link/to/multiBarHorizontalData.json", function() {
console.log( "success" );
}) 

它没有。 这些是我的控制台日志:

success
nvd3.js:9229 Uncaught TypeError: data.map is not a function

感谢任何帮助,提前致谢

$.getJSON 并不像您预期​​的那样 return 结果。 callback 中的 returns 数据。应该是

$.getJSON( "/link/to/multiBarHorizontalData.json", function(result) {
   long_short_data = result;
});