首页 文章

在Typescript中的数组<Type> VS Type []

提问于
浏览
80

据我所知,当它是一个数组时,属性的类型可以用两种方式定义 .

property_name: type

其中type可以是

Array<string>, ,Array<MyType>, etc. (e.g. let prop1: Array<string>)

string[], MyType[], etc. (e.g. let prop1: string[])

这两种情况之间的 difference 是什么?或者我是否误解了某些东西(也许是关于<>用于铸造的东西?)

EDIT 因为问题被标记为重复,我知道还有其他问题关于任何[]但我仍然在发布之前看过它而且对我而言更多的是关于类型'any'而不是[] VS <>我问

2 回答

  • -3

    没有区别 . 它相当于写:

    function loggingIdentity<T>(arg: T[]): T[] {
        console.log(arg.length);
        return arg;
    }
    

    要么:

    function loggingIdentity<T>(arg: Array<T>): Array<T> {
        console.log(arg.length);
        return arg;
    }
    

    资料来源:the Handbook .

  • 71
    foo: Array
    

    意味着它是一个普通的数组,它的成员有一个隐含的 any 类型

    foo: string[]
    

    意味着它是一个字符串数组,即如果你尝试将除字符串以外的任何东西推入该数组,那么TypeScript将会变得精神错乱 .

相关问题