最佳答案
我有一个超类,它是许多子类(Customer
, Product
, ProductCategory
…)的父类(Entity
)。
我想在Typescript中动态克隆一个包含不同子对象的对象。
例如:具有不同Product
的Customer
具有ProductCategory
var cust:Customer = new Customer ();
cust.name = "someName";
cust.products.push(new Product(someId1));
cust.products.push(new Product(someId2));
为了克隆对象的整个树,我在Entity
中创建了一个函数
public clone():any {
var cloneObj = new this.constructor();
for (var attribut in this) {
if(typeof this[attribut] === "object"){
cloneObj[attribut] = this.clone();
} else {
cloneObj[attribut] = this[attribut];
}
}
return cloneObj;
}
new
在被转译为javascript时将引发以下错误
虽然脚本工作,我想摆脱转译错误 . exe