Javascript 如何对函数原型进行类型化?

Javascript 如何对函数原型进行类型化?,javascript,typescript,ecmascript-6,Javascript,Typescript,Ecmascript 6,我有以下代码: 导出类型Ctor=new(…args:any[])=>T; 导出构造(BaseCtor:Ctor,…键:(keyof T)[]):Ctor{ const构造函数:Ctor=类扩展BaseCtor{ //代码在这里。。 } 返回构造函数; } 在其他地方我有: export const PersonCtor=construct(Person,'name,'age'); 导出类PersonRegistry{ //代码在这里。。 } 问题是如何将PersonCtor.prototy

我有以下代码:

导出类型Ctor=new(…args:any[])=>T;
导出构造(BaseCtor:Ctor,…键:(keyof T)[]):Ctor{
const构造函数:Ctor=类扩展BaseCtor{
//代码在这里。。
}
返回构造函数;
}
在其他地方我有:

export const PersonCtor=construct(Person,'name,'age');
导出类PersonRegistry{
//代码在这里。。
}
问题是如何将
PersonCtor.prototype
的类型从
any
更改为
Pick
。通过实现下面这样的接口,这是可能的吗?如果是,具体是如何实现的

接口TypedPrototype扩展函数{
原型:T;
}
谢谢你的回答


卡普里

什么是
拾取
的意义是什么?使用
原型
属性旁边的。不要扩展
函数
。嗨,贝基<代码>人员是DTO。嗯,我会按你建议的方式试试。。谢谢!:)请考虑修改这个问题中的代码,以便构成一个当它落入独立IDE时,清楚地显示出你所面临的问题。这将允许那些想要帮助您的人立即着手解决问题,而无需首先重新创建问题。它将使您得到的任何答案都可以根据定义良好的用例进行测试;您可以随意键入此内容(尤其是使用),但如果您使用
--strict
键入,并且曾经为具有依赖于缺少的属性的方法的类传入构造函数,则会自找麻烦。如果你从来没有这样做过,为什么你需要一个类构造函数呢?为什么不改用普通对象呢?