在ES6 中,匿名類別使開發人員能夠靈活地定義類,而無需明確命名它們。雖然這個功能看起來很吸引人,但實例化匿名類別也有其缺點。
當使用 new class {} 實例化匿名類別時,JavaScript 會悄悄建立幕後的建構子和原型物件。每次計算表達式時都會展開此過程,從而為每個實例產生單獨的建構函數和原型配對。
優點:
注意事項:
要避免這些陷阱,請選擇簡單的物件文字:
var entity = { name: 'Foo', getName() { return this.name; } }; console.log(entity.name); // Foo
物件文字提供了資料封裝和方法定義的好處,而沒有效能損失或原型與匿名類別實例化相關的碎片。
作為一般規則,避免直接實例化匿名類別。對於單例模式,請考慮已建立的方法,例如惰性求值或模組級變數。對於所有其他場景,物件文字仍然是首選,因為它們簡單、高效且與類別繼承相容。
以上是ES6 中的匿名類別實例化是祝福還是負擔?的詳細內容。更多資訊請關注PHP中文網其他相關文章!