1

我从 Typescript 开始,发现文档无法处理的语法:

statsTemplate: (params: any) => string;
4

2 回答 2

2

总体而言,该语句定义了所谓的“函数类型文字”(第 3.5.5 节函数类型文字):

函数类型字面量定义了包含单个调用签名的对象类型。

FunctionType: ( ParameterListopt ) => ReturnType

换句话说,在这里您定义了一个名为statsTemplate(显然)表示返回类型值的函数的string类型 - 并采用任何类型的单个参数......这实际上是 TypeScript 中的一种特殊类型(第 3.1 节“任何类型”):

Any类型用于表示任何 JavaScript 值。类型的值 Any支持与 JavaScript 中的值相同的操作,并且不对 Any 值的操作执行静态类型检查。具体来说,可以通过Any 值访问任何名称的属性,并且Any可以将值作为具有任何参数列表的函数或构造函数来调用。

如您所见,它实际上在文档 ( PDF ) 中有很好的描述。

于 2012-11-22T15:05:26.680 回答
2

有时通过实现一个类型更容易解释它:

var statsTemplate = function(params: any) : string {
    return 'Hello World';
};

这是以下实现:

(params: any) => string;
于 2012-11-22T18:25:15.127 回答