我最近一直在玩javascript,我試圖去掌握僞古典繼承的優點(如Crockford使用對象的原型屬性所述)。克羅克福德說,他很少使用它,喜歡功能的方法,那就是創建一個像增強Javascript僞古典繼承vs功能繼承
var obj = function() {
var self = {};
self.method = function() {
};
return self;
}
我更喜歡這種方法,它更容易的目的是瞭解和靈活的,似乎功能。然而,我看到很多仍然使用prototype屬性的代碼,包括像jQuery這樣的流行框架。我想知道有什麼優勢?我對使用prototype屬性的理解是,它使我們能夠通過遍歷原型鏈來詢問對象是否是特定類型。然而,作爲一種動態的語言,問問一個對象是否可以做某件事情,而不是它是什麼?
看看這裏關於速度,http://blogs.msdn.com/b/kristoffer/archive/2007/02/13/javascript-prototype-versus-closure-execution-speed.aspx和allso檢查javascript原型繼承 –