インデックス署名は、オブジェクトが持つ可能性のある多くのプロパティを記述するキーと値のペアのセットです。プロパティ名の型とプロパティ値の型をそれぞれ値とキーを使用して指定します。オブジェクトのプロパティの種類を強制するために、ユーザーは TypeScript のインデックス署名機能を利用できます。
インデックス署名は、特定のオブジェクトのプロパティを効果的に強制できますが、コードの理解と保守が難しくなる可能性もあります。したがって、必要な場合にのみインデックス署名を使用することが非常に重要です。
###文法### リーリー
上記の構文では、「objectName」はオブジェクトの名前であり、キーは文字列型、値は文字列になるように強制します。この例には、Person と PhoneBook という 2 つのインターフェイスがあります。 Person インターフェイスは、名前 (文字列) と年齢 (数値) の 2 つの属性を含む人物オブジェクトの構造を定義します。 PhoneBook インターフェイスは、文字列タイプをキーとして使用し、Person インターフェイスを値として使用して、インデックス署名を定義します。これは、PhoneBook インターフェイスを実装するオブジェクトは、キーの種類が String で値の種類が Person のプロパティのみを持つことができることを意味します。
リーリー
コンパイル時に、次の JavaScript コードが生成されます −リーリー
出力
上記のコードは次の出力を生成します -この例では、Product インターフェイスがあり、名前 (文字列) と価格 (数値) の 2 つのプロパティを持つ製品オブジェクトの構造を定義します。次に、数値型をキーとして使用し、Product インターフェイスを値として使用するインデックス署名を表す別のインターフェイス ShoppingCart があります。 ShoppingCart インターフェイスを実装するオブジェクトは、キー タイプが Number で値タイプが Product のプロパティのみを持つことができます。
リーリー
コンパイルすると、次の JavaScript コードが生成されます - リーリー出力
上記のコードは次の出力を生成します -以上がTypescript オブジェクトのインデックス付きメンバーに型を強制する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。