对对象方法,类方法,原型方法的理解

2018-06-24 00:05:44来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

 https://www.cnblogs.com/DF-fzh/p/5619319.html

http://www.cnblogs.com/snandy/archive/2012/09/01/2664134.html

function People(name)
{
  this.name=name;
  //对象方法
  this.Introduce=function(){
    alert("My name is "+this.name);
  }
}
//类方法
People.Run=function(){
  alert("I can run");
}
//原型方法
People.prototype.IntroduceChinese=function(){
  alert("我的名字是"+this.name);
}

 

//测试

var p1=new People("Windking");

p1.Introduce();

People.Run();

p1.Run(); //error p1没有Run()方法

p1.IntroduceChinese(); 

 

对象方法是可以继承的即父元素一份子元素也有一份,如果实例很多则很浪费内存空间

类方法不被继承只能类自身调用

原型方法可被继承但是他是一个引用类型,只有一份,即使有很多实例,但都是针指向prototype一个

 

prototype

 

 

function Person(name){
                this.name=name;
            }
            
            Person.prototype.share=[];
            
            Person.prototype.printName=function(){
                alert(this.name);
            }
            
            var person1=new Person('Byron');
            var person2=new Person('Frank');
            
            person1.share.push(1);
            person2.share.push(2);
            console.log(person2.share); //[1,2]

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:[js高手之路]设计模式系列课程-单例模式实现模态框

下一篇:数组的一些常用方法分析 介绍