为什么我的高图表代码不起作用



我在高图表的深入分析事件中有一个,它工作正常。

if (!e.seriesOptions) {
    var s=e.point.name;
    var chart = this,
        drilldowns = {
         'SAR': {
                name: 'SAR',
                data: yearData,
            }
        },
        series = drilldowns[e.point.name];
    chart.addSeriesAsDrilldown(e.point, series);                                       
}

但是当我用 e.point.name 替换字符串"SAR"时

if (!e.seriesOptions) {
    var s=e.point.name;
    var chart = this,
        drilldowns = {
         s: {
                name: s,
                data: yearData,
            }
        },
        series = drilldowns[e.point.name];
    chart.addSeriesAsDrilldown(e.point, series);
}

它不显示任何向下钻取数据,其中 e.point.name 包含字符串"SAR"。

你不能像你打算的那样创建一个JS对象:

var s = 'SAR',
drilldowns = {
  s: {
    name: s,
    data: [],
  }
}

将创建一个对象drilldown使用键s而不是SAR

{s: {name: "SAR", data: [] }}

但是,您可以将字符串用于带有括号表示法的键:

var s = 'SAR', 
drilldowns = {};
drilldowns[s] = { 
  name: s, 
  data: []
}

将为您创建一个具有正确键的向下钻取对象:

{SAR: {name: "SAR", data: []}}

最新更新