javascript对象的易变形

   在javascript中,我们可以把一切看作为是对象(除了三种原始数据类型。不过某些时候,也会被自动包装成为对象),我们可以动态的给一个函数添加属性和方法。

例:

///定义一个人类;
function Person(name,age)
{
 this.name=name;
 this.age=age;
}
Person.prototype={
 getName:function(){
 return this.name;
 },
  getAge:function(){
   return this.age;
  }
}

我们可以实例化此类,并动态添加方法

var fjc=new Person('冯际成',21);
var hjx=new Person('郝继旭',20);
//动态添加方法,属于这个对象;
Person.prototype.getGreeting=function(){
return 'Hi '+this.getName()+'!';
}
//也可以这样添加,属于这个实例。
fjc.displayGreeting=function(){
alert(this.getGreeting());
}

由于前一种方式使用prototype方式添加方法,添加的方法属于此类,后面的两个实例都可以进行访问,后面一种方式,添加的方法只属于此实例;

 

作者:冯际成
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利.如有问题,请与作者联系:604756218@qq.com
原文地址:https://www.cnblogs.com/sharpmap/p/2208013.html