【译】Typescript的类型(二)

470 阅读2分钟

Enum

枚举(enumerations)允许你为一组数值赋予友好的名字。

以下是enum 的结构:

你可以像这样从enum获取值:

等下,它返回表示值的索引的整数。和数组一样,枚举从 0 开始索引其元素。

我们怎么通过索引 0 得到 值Indrek

注意值是如何表示为字符串的。

另一个好的运用例子是使用枚举存储应用的状态。

如果你想了解更多关于枚举的知识—我发现有关于 enum 细节的不错的答案

Never

假设我们从API中获取了一些数据。我们总是期望能获取到数据,但是如果我们不能拿到数据该怎么办呢?

在恰当的时间返回 never类型(特殊情况下)

请注意我们传递的错误消息。

我们在另一个函数(回调)中调用 error函数:

请注意当返回类型是 never 时,我们使用 never,而不使用 void

Null && Undefined

  • null —— 缺少任何值
  • undefined —— 变量已经定义,但未赋值

它们的本身的类型用处不是很大:

默认情况下nullundefined是所有类型的子类型。 就是说你可以把 nullundefined赋值给number类型的变量。

资源

这是一篇由 Axel Rauschmayer博士写关于 nulldefined的文章。

类型断言

通常这会在你清楚地知道一个实体具有比它现有类型更确切的类型使用类型断言。

类型断言在运行时没有影响,只是给编译器使用。Typescript回假设你(程序员)已经执行了你需要的任何的类型检查。

这是一个演示:

方括号 <> 语法会与 JSX语法冲突,所以我们使用 as代替。

这里有关于类型断言的资源

更酷的东西

现在我们已经使用Typescript做了些很酷的东西。 感谢阅读,保持好状态。可以在我的推特了解更多。