2016-09-08 54 views
3

我讀了你最好有一個對象的固定結構,只是需要改變的屬性值,而不是刪除/添加屬性本身,這樣的JavaScript引擎,更好的優化,就像這樣:分配未定義的屬性在構造函數中

var MyClass = function(){ 
    this.prop = undefined; 
}  
var a = new MyClass(); 

我覺得這很雜亂,也是一個陰暗的JavaScript黑客,雖然可以使用它,如果它真的提高了應用程序的運行。

雖然,我有點懷疑這一招在前端應用,即使它是一個複雜的問題,包括類和組件100S的。

所以,問題是,在構造函數中賦值屬性初始值是否有意義?或者它更像是一個假想的性能優化,難以發現?

回答

1

,實際上它是有意義的在構造函數中分配屬性的初始值?

是的,絕對。它確實提高了對優化編譯器和人類讀者的清晰度,這在更大的代碼庫中尤爲重要。

但是,您試圖構造沒有初始化屬性的對象可能暗示了更常見的設計缺陷。當你甚至不知道合理的初始值時,也許你不應該實例化任何東西,直到你知道它們。

相關問題