在对象构造器中定义方法与将其追加到构造函数的原型对象之间是否存在有用的区别?



考虑以下代码示例:

function Person(config) {
    this.name = config.name;
    this.age = config.age;
}
Person.prototype.getAge = function() {
    return this.age;
};
var tilo = new Person({name:"Tilo", age:23 });
console.log(tilo.getAge());

而不是将getName()定义为构造函数的原型属性的附件,在我看来,它可以在构造函数中定义以实现同样的事情?有什么有用的区别吗?换句话说,这样做或那样做是否有任何特定的实现优势?

构造函数将在每次调用时创建该函数的新实例。

最新更新