Javascript 我应该将类方法移到原型中吗?
我有课Javascript 我应该将类方法移到原型中吗?,javascript,performance,prototype,Javascript,Performance,Prototype,我有课 function Foo(a) { this.a = a; this.bar = function () { console.log(this.a); }; this.buz = function () { this.a(); console.log('bzz'); }; } 我将有很多这个类的实例。我应该将方法转移到原型中吗 function Foo(a) { this.a = a; } Foo.prototype = { bar:
function Foo(a) {
this.a = a;
this.bar = function () {
console.log(this.a);
};
this.buz = function () {
this.a();
console.log('bzz');
};
}
我将有很多这个类的实例。我应该将方法转移到原型中吗
function Foo(a) {
this.a = a;
}
Foo.prototype = {
bar: function () {
console.log(this.a);
},
buz: function () {
this.a();
console.log('bzz');
}
}
对。这将节省内存,因为每次实例化类时,每个方法都将被
共享
,而不是重新创建
构造函数中的方法被视为特权方法
,因为它们可以访问构造函数中的私有变量
,并且只有在需要访问私有变量时才应使用
放置类方法是一个节省内存的好主意。原型中只有一个方法实例,而不是每个对象中的多个实例。在JS构造函数中定义方法的唯一原因是创建“”方法 其思想是创建一个公开可用的方法,但可以访问私有实例变量