TypeScriptのオブジェクトリテラルの型定義 質問する

TypeScriptのオブジェクトリテラルの型定義 質問する

TypeScript クラスでは、プロパティの型を宣言できます。例:

class className {
  property: string;
};

オブジェクトリテラルでプロパティの型を宣言するにはどうすればよいですか?

次のコードを試しましたが、コンパイルされません。

var obj = {
  property: string;
};

次のエラーが発生します:

名前「文字列」は現在のスコープ内に存在しません

何か間違っているのでしょうか、それともバグでしょうか?

ベストアンサー1

=かなり近いです。を に置き換えるだけです:。オブジェクト型リテラル (仕様セクション 3.5.3 を参照) またはインターフェースを使用できます。オブジェクト型リテラルを使用すると、次のようになります。

var obj: { property: string; } = { property: "foo" };

しかし、インターフェースを使うこともできます

interface MyObjLayout {
    property: string;
}

var obj: MyObjLayout = { property: "foo" };

おすすめ記事