js 對象方法、類方法、原型方法的區別

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.IntroduceChinese(); //原型方法也須要經過實例化對象去調用 
複製代碼

總結

一、對象方法包括構造函數中的方法以及構造函數原型上面的方法;
二、類方法,其實這裏的類就是一個函數,在js中因爲函數也是一個對象,因此能夠爲函數添加屬性以及方法,這種方法在node中用的比較多;
三、原型方法通常用於對象實例共享,好比Person.prototype.sayName=function(){console.log(this.name);};在原型上面添加該方法,就能實現共享。這樣就不用每一次初始化一個實例的時候,爲其分配相應的內存了。node

相關文章
相關標籤/搜索