2017-05-18 196 views
-2

这里是我的JavaScript代码:无法调用JavaScript函数

var chart = { 
    generateChartData: function() { 
    return "hello" 
    }, 
    chartData: generateChartData() 
} 

以上抛出一个错误Uncaught ReferenceError: generateChartData is not defined

回答

4

你有两个问题。

  1. 您在任何范围内都没有做任何事情来创建一个名为generateChartData的变量。
  2. 对象完成构建后,您将创建chart.generateChartData ...但在您尝试调用该函数时不会存在该对象。
1

您可以创建一个getterchartData财产,在里面可以调用generateChartData()方法,并得到其价值。

var chart = { 
 
    generateChartData: function() { 
 
    return "hello" 
 
    }, 
 
    get chartData() { 
 
    return this.generateChartData() 
 
    } 
 
} 
 

 
console.log(chart.chartData)