如果我在 Javascript 中创建一个类的多个实例,每个实例的每个函数是否会像变量一样在内存中获得自己的空间?

par*_*eet 5 javascript memory class function instance

我想创建一个类的多个实例,如果这样做,每个实例是否会获得类中每个函数的单独副本,或者每个实例是否仅指向类中函数的单个副本?我尝试用谷歌搜索这一点,发现一些线程说大多数语言都没有,但我确实找到了一个线程,评论中有人说这在 js 中是可能的,但没有具体说明什么条件。另外,如果有帮助的话,我正在使用这种格式来制作课程:

class thing {

  constructor(){

  }

  someFunction(){

  }

}
Run Code Online (Sandbox Code Playgroud)

AKX*_*AKX 2

试试看。知道===运算符是严格相等的:

class thing {
  someFunction(){
    return this.meep;
  }
}
const t1 = new thing();
const t2 = new thing();
console.log(t1.someFunction === t2.someFunction);
console.log(t1.someFunction === thing.prototype.someFunction);
Run Code Online (Sandbox Code Playgroud)

事实上,从第二个开始true你也可以看出它和onthingprototype的功能是一样的。