gpt4 book ai didi

typescript - typescript 中 type[] 和 [type] 的区别

转载 作者:搜寻专家 更新时间:2023-10-30 20:31:40 25 4
gpt4 key购买 nike

假设我们有两个接口(interface):

interface WithStringArray1 {
property: [string]
}

interface WithStringArray2 {
property: string[]
}

让我们声明这些类型的一些变量:

let type1:WithStringArray1 = {
property: []
}

let type2:WithStringArray2 = {
property: []
}

第一次初始化失败:

TS2322: Type '{ property: undefined[]; }' is not assignable to type 'WithStringArray1'.
Types of property 'property' are incompatible.
Type 'undefined[]' is not assignable to type '[string]'.
Property '0' is missing in type 'undefined[]'.

第二个没问题。

[string]string[] 有什么区别?

最佳答案

  • [string] 表示一个字符串类型的元组
  • string[]表示一个字符串数组

在您的案例中,元组的正确用法是:

let type2:WithStringArray2 = {
property: ['someString']
};

参见 Documentation

关于typescript - typescript 中 type[] 和 [type] 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36741917/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com