簡體   English   中英

使用 new 關鍵字在構造函數中創建類的實例是不好的做法嗎?

[英]Is bad practice to create instance of class in constructor with new keyword?

我在 Javascript 中有一個類,需要這個類中的一個對象來自其他類。 我的問題是哪個更好?

從類定義中創建類的實例還是在構造函數中創建?

示例代碼:

const b = new B();

class A {
  // and then use b
}
// or 
class A {
 constructor() {
 const b = new B();
 }
}

無論哪個類控制其他對象的生命周期,都會創建這些對象。

在您的示例中,如果A控制B的該特定實例的生命周期,則可以在構造函數中創建B

但是,如果另一個類從B控制(或擁有)對象的生命周期,則應在構造函數中將B的實例傳遞給A

測試很簡單:負責其他對象生命周期的類負責創建這些對象。

如果它們都是類,您可以擴展您需要的類。

class b {}

class a extends b {}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM