2014-09-04 80 views
2

當protyping功能(在大多數代碼我見過),他們一般都寫像這樣:原型功能的編碼風格

function MyFunc() { } 
MyFunc.prototype.render1 = function() { }; 
MyFunc.prototype.render2 = function() { }; 
MyFunc.prototype.render3 = function() { }; 

然而,這可以被縮短,像這樣:

function MyFunc() { } 
MyFunc.prototype = { 
    render1: function() { }, 
    render2: function() { }, 
    render3: function() { } 
}; 

從我理解被縮短的方式將完全覆蓋原型屬性的功能,因爲反過來添加一個。以這種方式編寫原型函數還有其他缺點嗎?

+0

是完全搞亂了你的對象的合理的默認值缺點不夠? – 2014-09-04 08:31:31

回答

1

我不知道寫的第二種方法的任何問題 - 這也是我所用 - 因爲根本原型是對象,你傳遞一個對象,因此...

+0

...所以你覆蓋以前設置的任何東西... – 2014-09-04 08:39:28

+0

,因爲你擴展本地對象原型?!太糟糕了... – dmidz 2014-09-04 08:46:22