TypeScript中关联对象数组的接口

时间:2016-07-05 22:35:12

标签: typescript tuples associative-array unions

我有一个像这样的对象:

var obj = {
    key1: "apple",
    key2: true,
    key3: 123,
    .
    .
    .
    key{n}: ...
}

所以obj可以包含任意数量的命名键,但值必须都是string,bool或number。

如何在TypeScript中将obj的类型声明为接口?我可以声明一个联合类型或类似东西的关联数组(或可变参数元组)吗?

1 个答案:

答案 0 :(得分:29)

是的,您可以使用index signature

interface MyType {
    [key: string]: string | boolean | number;
}

var obj: MyType = {
    key1: "apple",
    key2: true,
    key3: 123
};