我有一个像这样的对象:
var obj = {
key1: "apple",
key2: true,
key3: 123,
.
.
.
key{n}: ...
}
所以obj
可以包含任意数量的命名键,但值必须都是string,bool或number。
如何在TypeScript中将obj
的类型声明为接口?我可以声明一个联合类型或类似东西的关联数组(或可变参数元组)吗?
答案 0 :(得分:29)
是的,您可以使用index signature:
interface MyType {
[key: string]: string | boolean | number;
}
var obj: MyType = {
key1: "apple",
key2: true,
key3: 123
};