我正在尝试使用原型功能和我从其他站点获得的示例代码。
我已简化代码并在下面列出。当我使用它时,我收到以下错误:TypeError:this.createChart不是一个函数。我没有在jsfiddle上得到这个错误,只是当我试图实现代码我的网站时。
我的工作jsfiddle在这里:http://jsfiddle.net/56vjtv3d/76
有什么建议吗?谢谢!
function Meteogram(A,B) {
this.A = A;
this.B = B;
this.createChart();
}
Meteogram.prototype.createChart = function() {
alert('test');
//Will do other stuff here
};
答案 0 :(得分:2)
此代码工作正常,您可能无法正确初始化对象
您的Meteogram功能称为"对象构造函数"并且它可用于创建多个类似的对象,并且要从此构造函数创建新对象,您需要使用 new 关键字
我们已经有了这个:
function Meteogram(A,B) {
this.A = A;
this.B = B;
this.createChart();
}
Meteogram.prototype.createChart = function() {
alert('test');
//Will do other stuff here
}
现在..
这将有效:
var m = new Meteogram('a', 'b');
// Now m is an instance of Meteogram !!
这不会:
var m = Meteogram('a', 'b');
// Uncaught TypeError: this.createChart is not a function(…)