Javascript:将对象存储为哈希值

时间:2014-04-07 20:22:55

标签: javascript javascript-objects

我对javascript很新,我不确定是否可以这样做。

我正在尝试将Chart对象(来自Chartjs.org)存储为散列中的值,键是字符串。当运行以下代码时,我得到一个错误,上面写着'Object [object Object]没有方法'Line'。

有什么建议吗?

var charts = {};

function drawChart(response, div_id){
  data = {
    labels: response.labels,
    datasets: [{...},{...}]
  };

  options = {...};


  var canvas = document.getElementById(div_id);
  var ctx = canvas.getContext("2d");

  if(!charts[div_id]){
    charts[div_id] = new Chart(ctx).Line(data, options);    
  }
  else{
    charts[div_id].Line(data, options);
  }
}

1 个答案:

答案 0 :(得分:0)

.Line()可能不会返回Chart()对象,因此在else部分中,您执行的操作相当于Chart()。Line()。Line

尝试像这样重写

  if(!charts[div_id]){
    charts[div_id] = new Chart(ctx);  
  }

  charts[div_id].Line(data, options);
相关问题