1. ホーム
  2. タイプスクリプト

[解決済み】オブジェクトの配列を定義するにはどうしたらいいですか?

2022-03-25 03:30:39

質問

TypeScriptでオブジェクトの配列を作成しています。

 userTestStatus xxxx = {
    "0": { "id": 0, "name": "Available" },
    "1": { "id": 1, "name": "Ready" },
    "2": { "id": 2, "name": "Started" }
 };

どうすれば正しく型を宣言できるのか、どなたか教えてください。インラインで可能ですか?それとも2つの定義が必要ですか?

を置き換えたいと考えています。 xxx を型宣言に置き換えることで、後でTypeScriptが次のようなものを使用した場合に警告するようにします。 userTestStatus[3].nammme というように、誤って

解決方法は?

を使用したほうがよいでしょう。 ネイティブ配列 そのため、番号付け(および他の多くの配列関数)は、すぐに対処できます。

ここで求めているのは、インラインの インターフェース は、配列の各要素を定義するものです。

let userTestStatus: { id: number, name: string }[] = [
    { "id": 0, "name": "Available" },
    { "id": 1, "name": "Ready" },
    { "id": 2, "name": "Started" }
];

userTestStatus[34978].nammme; // Error: Property 'nammme' does not exist on type [...]

配列の値をすぐに初期化するのであれば、明示的な型定義は必要ありません。TypeScriptは最初の割り当てから、ほとんどの要素の型を自動的に推測することができます。

let userTestStatus = [
    { "id": 0, "name": "Available" },
    ...
];

userTestStatus[34978].nammme; // Error: Property 'nammme' does not exist on type [...]