JavaScript原型示例

时间:2016-05-09 19:35:26

标签: javascript function prototype

我正在尝试使用原型功能和我从其他站点获得的示例代码。

我已简化代码并在下面列出。当我使用它时,我收到以下错误: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
    };

1 个答案:

答案 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(…)