在项目开发过程中我们经常遇到一些需要动态添加的变量或方法属性。在JavaScript语言中动态原型模式能很好的解决此问题。
栗子:
function Person(name,age,job){
this.age=name;
this.name=age;
this.job=job;
if(typeof this.sayName !="function"){//添加if语句动态的判定
Person.prototype.sayName= function(){
console.log(this.name)
}
}
}
var person=new Person("Marker",21,"programer");
person.sayName();
此种方法对原型的修正可以在这个原型的所有实例中得到反映
注:不用在此种原型模式中使用字面量定义(字面量定义会切断原型链)