2012-11-17 58 views
2

簡而言之,這兩段代碼之間是否有區別,是否有任何理由使用一個和另一個?同時定義整個原型和單獨設置方法之間的區別

代碼#1:

​var thing=function(){} 

thing.prototype={ 
    some_method:function(){ 
      alert('stuff');   
    } 
} 

代碼#2:

var thing=function(){} 

thing.prototype.some_method=function(){ 
    alert('stuff');   
} 

回答

3

這是一樣的。沒有理由爲什麼會有差異。

但在我看來這是更好,因爲你有少,如果你決定要thing「類」改爲使用第二種形式從另一個繼承:

thing.prototype = new SuperThing(); // inherits from the SuperThing class 
thing.prototype.some_method=function(){ 
    alert('stuff');   
} 

這也使其更容易界定您的課程在多個JavaScript文件中。

而且,爲了保持代碼的連貫性,我寧願總是使用相同的結構,即thing.prototype.some_method=function(){

相關問題