【问题标题】:Typescript weird type打字稿奇怪的类型
【发布时间】:2018-02-10 05:05:53
【问题描述】:

我遇到过这种类型:

let a: [number | string];

我已经用谷歌搜索并查看了 Typescript 文档,但我没有看到提到的这种语法。它是什么,我看到基数是字符串或数字的联合,但它不是元组也不是数组。它对应什么?任何人都可以简单地解释一下如何初始化它并添加值。

【问题讨论】:

标签: typescript


【解决方案1】:

大小为 1 的元组。包含 numberstring

【讨论】:

  • 我认为 valeu 的 API 文档让我感到困惑,因为它说它是 [string|number] - 所以我用 [];但它只接受值并按照描述的方式工作,如果我向它传递一个字符串 []。无论如何,我认为你是正确的,它只是一个“奇数”的单元素元组。
【解决方案2】:

就我个人而言,我将其描述为一个array,它只能容纳一个项目,它必须是一个数字或一个字符串。

您也可以将数组描述为tuple,但我个人认为元组的全部意义在于它们应该包含多个值,而不仅仅是一个。 两者都是正确的。

旁注:当我遇到不熟悉的语法时,我喜欢在 typescript 沙箱中尝试它们并查看生成的 javascript 代码:https://www.typescriptlang.org/play/

【讨论】:

  • 我试过那个网站,但它只是将它转换为var a。将来仍然有用,谢谢。
  • 对不起,你说得对,在这种情况下生成的 javascript 代码不是很有用。我的意思更多是作为一种实验方式。例如,this 将让您深入了解哪些是可能的,哪些是不可能的,而无需开发环境。
猜你喜欢
  • 2017-05-20
  • 1970-01-01
  • 2020-08-23
  • 2021-10-28
  • 1970-01-01
  • 2022-08-06
  • 2018-02-23
  • 2019-03-31
  • 2021-06-19
相关资源
最近更新 更多