首页 > 代码库 > 函数创建对象(2)原型模式
函数创建对象(2)原型模式
原型对象的特点是共享,让所有对象实例共享它包含的属性和方法,就是不必再构造函数中定义对象实例的信息,而是将这些信息直接添加到原型对象中;
function Person(){ Person.prototype.name="lee"; Person.prototype.age=29; Person.prototype.job="Engineer"; Person.prototype.sayName=function(){ alert(this.name); }; var person1=new Person(); person1.sayName();//"lee" var person2=new Person(); person1.sayName();//"lee" //"lee" alert(person1.sayName==person2.sayName);//ture}
注意:虽然可以通过对象实例访问保存在原型中的值,但却不能通过对象实例重写远行中的值;如果在实例中添加一个属性,属性名与原型中相同,该属性将会屏蔽原型中的那个属性(可以通过delete操作符删除实例属性);
缺点:对于包含引用类型值的属性原型模式的共享特性会造成不需要该属性的实例也受到影响;
函数创建对象(2)原型模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。