Typescript允许用一种语法定义一个数组:
var myStrArry1: string[] = [];
或
var myStrArry1: Array<string> = [];
编译后的输出看起来是一样的。编译器是否对它们进行相同的处理,或者是否存在一些需要注意的怪癖?
答案 0 :(得分:3)
编译器是否对它们进行相同的处理,或者是否有一些需要注意的怪癖?
他们是完全相同的。我更喜欢语法1
答案 1 :(得分:2)
从typescript documentation开始,它们被视为相同,一个只是另一个的简写符号。编译器不关心你使用哪一个。
答案 2 :(得分:1)
这是TypeScript规范中的段落:https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md#3.8.4,它指定两种语法都是等效的:
或者,可以使用
Array<T>
编写数组类型 符号。例如,上述类型等同于
Array<string | number> Array<() => string>