Typescript から始めて、ドキュメントで処理できない構文を見つけました。
statsTemplate: (params: any) => string;
全体として、このステートメントはいわゆる「関数型リテラル」を定義します (セクション 3.5.5関数型リテラル)。
関数型リテラルは、単一の呼び出しシグネチャを含むオブジェクト型を定義します。
FunctionType: ( ParameterListopt ) => ReturnType
つまり、ここではstatsTemplate
、(明らかに) 型の値を返す関数を表すという名前の型を定義しstring
、任意の型の単一のパラメーターを受け取ります...これは、実際には TypeScript の特別な型です (セクション 3.1 The Any Type ):
タイプは、
Any
JavaScript 値を表すために使用されます。型の値はAny
、JavaScript の値と同じ操作をサポートし、任意の値の操作に対して静的な型チェックは実行されません。具体的には、Any
値を介して任意の名前のプロパティにアクセスできAny
、任意の引数リストを使用して関数またはコンストラクターとして値を呼び出すことができます。
ご覧のとおり、実際にはドキュメント ( PDF ) で詳しく説明されています。
実装することで型を説明する方が簡単な場合があります。
var statsTemplate = function(params: any) : string {
return 'Hello World';
};
これは次の実装です。
(params: any) => string;