Generics typescript中的类型词典?

Generics typescript中的类型词典?,generics,dictionary,typescript,Generics,Dictionary,Typescript,我的类层次结构如下所示: interface TypeI { getName(): string; } class ClassA implements TypeI{ static name: string = "A" getname(){ return ClassA.name; } } class ClassB implements TypeI{ static name: string = "B" getname(){

我的类层次结构如下所示:

interface TypeI {
    getName(): string;
}

class ClassA implements TypeI{
    static name: string = "A"
    getname(){
        return ClassA.name;
    }
}

class ClassB implements TypeI{
    static name: string = "B"
    getname(){
        return ClassB.name;
    }
}
var typedDictionary: { [<T extends TypeI>] : T };
typedDictionary[ClassA] = new ClassA();
var a: ClassA = typedDictionary[ClassA];
是否可以在typescript中创建实现TypeI的类型字典?大概是这样的:

interface TypeI {
    getName(): string;
}

class ClassA implements TypeI{
    static name: string = "A"
    getname(){
        return ClassA.name;
    }
}

class ClassB implements TypeI{
    static name: string = "B"
    getname(){
        return ClassB.name;
    }
}
var typedDictionary: { [<T extends TypeI>] : T };
typedDictionary[ClassA] = new ClassA();
var a: ClassA = typedDictionary[ClassA];
var-typedDictionary:{[]:T};
typedDictionary[ClassA]=新ClassA();
变量a:ClassA=typedDictionary[ClassA];
在typescript中实现TypeI的类型字典

javascript中对象的键只能是字符串。如果传入的内容不是字符串,则将对其调用
toString
。因此,不能将类型
T
作为键。。。只有一个
字符串


但是,您可以在类中对其进行抽象,这与此通用词典类似:

也许可以将toString方法添加到TypeI?@АаааАаааааааааа。这是我的意图,所以我澄清了它。