在javascript中制作类函数的正确方法

2 javascript methods class

我有以下代码:

function Class () {
  this.method = function () {
    alert('method');
  };
}

new Class().method();
Run Code Online (Sandbox Code Playgroud)

它工作正常,但据我所知,每个新对象都将创建该函数.有没有正确的方法来做到这一点?

Dan*_*sky 5

将实例varibales的初始化放入Class函数,并在prototype属性中共享方法和变量:

function Class (var1, var2) {
  this.var1 = var1;
  this.var2 = var2;
}

Class.prototype.method = function () {
  alert(this.var1 + ' ' + this.var2);
};

new Class('var1', 'var2').method();
?
Run Code Online (Sandbox Code Playgroud)