Get the App
SLTechnology News&Howtos  ›  Development  › 

How TypeScript uses type aliases

Shulou Source: shulou.com Published: 2022-06-01 04:17:43 09月23日 Update

This article mainly introduces how TypeScript uses type aliases, which has a certain reference value, interested friends can refer to, I hope you can learn a lot after reading this article, the following let the editor take you to understand.

Type alias

Type aliases give a new name to a type. Type aliases are sometimes similar to interfaces, but can be applied to primitive values, union types, tuples, and any other type you need to write.

Type aliases can be generic

Type Container = {value: t}

You can also use a type alias to reference yourself in a property:

Type Tree = {value: t; left: Tree; right: Tree;}

Type aliases look a lot like interface, so how do you distinguish between the two?

Interface can only be used to define object types, while type can also define crossover, union, primitive types and so on in addition to objects. Type declaration is obviously more widely applicable.

But interface also has its specific uses:

Interface can realize the extends and implemenjs of the interface.

Interface can implement interface merge declaration

Type Alias = {num: number} interface Interface {num: number;} declare function aliased (arg: Alias): Alias;declare function interfaced (arg: Interface): Interface

In addition, the interface creates a new name that can be used anywhere else. Type aliases do not create new names-for example, error messages do not use aliases. In the following sample code, hovering over interfaced in the compiler shows that it returns Interface, but when hovering over aliased, it shows the literal type of the object.

Thank you for reading this article carefully. I hope the article "how to use type aliases in TypeScript" shared by the editor will be helpful to you. At the same time, I also hope you will support us and pay attention to the industry information channel. More related knowledge is waiting for you to learn!

Tags: Type alias interface article name object way original union lieutenant general code value function information interest at the same time literal attributes more friends Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno MySQL vpn Xiaomi Shulou Technology Apple