[英]create an object based on the type of another object in TypeScript
如何基於TypeScript中另一個對象的類型創建對象
obj1 = new Object();
obj2 = new "obj1.constructor.name"
我必須這樣做,因為Object 1
可以具有不同的類。
如果嘗試這樣做,則打字稿編譯器會抱怨:
new obj1.constructor()
但您可以說這樣可以:
class A {}
class B extends A {}
type AConstructor = {
new(): A;
}
type BConstructor = {
new(): B;
}
let a1 = new A();
let a2 = new (a1.constructor as AConstructor)();
let b1 = new B();
let b2 = new (b1.constructor as BConstructor)();
( 操場上的代碼 )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.