web-dev-qa-db-ja.com

TypeScriptの連想オブジェクト配列のインターフェース

私はそのようなオブジェクトを持っています:

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

そのため、objには任意の数の名前付きキーを含めることができますが、値はすべて文字列、ブール、または数値でなければなりません。

TypeScriptのインターフェイスとしてobjの型を宣言するにはどうすればよいですか?共用体型または類似の連想配列(または可変個のタプル)を宣言できますか?

25
prmph

はい、使用できます インデックス署名

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

var obj: MyType = {
    key1: "Apple",
    key2: true,
    key3: 123
};
44
David Sherret