阅读Typescript 4.0 中的变化,我发现了新功能:
带标签的元组元素
我认为元素可以由数字(如元组和列表)或键(如字典)索引。我不希望它们可以双向索引。
我的问题是:
Die*_*Epp 12
这纯粹是出于文档目的,它没有语义。它们只是在类型签名中放置名称的一种方式——它们对没有名称的元组进行类型检查,并且运行时行为也相同。
虽然这些对类型检查没有影响,但元组位置上缺少标签会使它们更难使用——更难传达我们的意图。
加了重点。
每当您想记录元组中元素的名称在使用它们的函数的类型签名中的名称时,请使用它们。
您可能有一种Range类型,即[start, end]:
type Range = [start: number, end: number];
Run Code Online (Sandbox Code Playgroud)
或者您的Range类型可能是[start, length]:
type Range = [start: number, length: number];
Run Code Online (Sandbox Code Playgroud)
或者您可以使用未命名的元组:
type Range = [number, number];
Run Code Online (Sandbox Code Playgroud)
就 TypeScript 而言,这三个定义具有相同的语义。您可以通过数组访问(例如arr[0])通过解构访问成员,就像任何其他数组一样——它们并不特殊。您不能按名称访问元素……同样,这些只是普通的 JavaScript 数组对象。
| 归档时间: |
|
| 查看次数: |
3555 次 |
| 最近记录: |