TypeScript——类型别名(type)

这篇具有很好参考价值的文章主要介绍了TypeScript——类型别名(type)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

类型别名

type 关键字,用来给一个类型起个新名字

定义类型别名

type str = string

let s: str = '我是张三'

console.log(s)

定义联合类型别名

type item = string | number

let arr: item[] = [1, 'zs']

console.log(arr)

interface与类型别名

两者可以被继承
  • interface 继承 interface
interface Person {
  name: string
}

interface Student extends Person {
  stuNo: number
}

  • interface 继承 type
type Person = {
  name: string
}

interface Student extends Person {
  stuNo: number
}
  • type 继承 type
type Person = {
  name:string
}

type Student = Person & { stuNo: number }
  • type 继承 interface
interface Person{
  name:string
}

type Student = Person & { stuNo: number }

interface的继承通过extends, type 通过 & 交叉类型合并

声明合并

如果你多次声明一个同名的接口,TypeScript 会将它们合并到一个声明中,并将它们视为一个接口。这称为声明合并

interface Person {
  name: string
}
interface Person {
  age: number
}

let user: Person = {
  name: 'zs',
  age: 18,
}

这种情况下,如果是type的话,重复使用Person是会报错的

type Person = {
  name: string
}

type Person = {
  age: number
}

interface 重名会进行合并,type 不行,会报错,只能声明一次文章来源地址https://www.toymoban.com/news/detail-508089.html

到了这里,关于TypeScript——类型别名(type)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • TypeScript 类型别名(Type Aliases)

    在 TypeScript 中,类型别名(Type Aliases)是一种给现有类型起别名的方式。它可以帮助提高代码的可读性和可维护性,尤其是当你需要使用复杂或重复的类型注解时。 基本使用 本段代码使用了类型别名  N1  来表示一个可以是  number 、 string  或者  boolean  类型的联合类型。接

    2024年02月13日
    浏览(36)
  • go的type关键字

    在 Go 语言中,type 用于定义自定义数据类型(类型别名、结构体、接口等),以及获取某个变量的类型信息。type 有多种用法,下面将详细解释这些用法: 1. 自定义数据类型 使用 type 可以定义自定义的数据类型,包括类型别名、结构体、接口等。例如:

    2024年02月13日
    浏览(46)
  • Go语言中关键字type的多重应用场景详解

    当谈及Go语言中的 type 时,我们通常会想到用于定义结构体和接口的常见用法。然而,\\\"type\\\"实际上有许多其他用法,本文将对其中几种常见用法进行简要总结记录。 在Go中,我们可以使用 type 来定义结构体,这是一种自定义的复合数据类型,可以包含多个字段。

    2024年02月13日
    浏览(42)
  • 正则表达式中的“回引用(回溯)”——别名引用与序号引用的差异及正则表达式中的“P”关键字

    读到一段巧妙的正则表达式,勾起我对正则表达式欠缺知识点的探寻: P y t h o n Python P y t h o n 正则表达式中的“回引用 (回溯) ”——分组别名引用与序号引用的差异及正则表达式中的“P”详情。 (笔记模板由python脚本于2024年01月14日 07:49:35创建,本篇笔记适合 熟悉基

    2024年01月19日
    浏览(48)
  • instanceof、对象类型转化、static关键字

    instanceof是判断一个对象是否与一个类有关系的   先看引用类型,再看实际类型 * 例子:obj instanceof A 先看obj的类型是否与A有关联,无关联则报错,有关联则判断obj的实际类型 因为obj的实际类型是son,所以String类与他无关,所以返回false 对象类型转换: 发生在父子之间

    2024年02月02日
    浏览(42)
  • C#中var关键字详解:强类型、匿名类型和LINQ查询的妙用!

      在C#中, var 是强类型的,因为它在编译时会根据变量的初始化表达式推断出变量的实际类型,并且一旦确定了类型,就不能再更改。这种类型推断是在编译时进行的,因此代码中的变量在运行时是具有明确定义类型的。 下面是一个简单的示例,说明 var 的强类型特性

    2024年02月01日
    浏览(58)
  • Java基础篇_1.2——保留关键字、基本数据类型、基本数据类型之间的转换

    目录 一、保留 二、Java的基本数据类型 三、引用数据类型  四、基本数据类型间的转换  隐含强制类型转换 数值之间的合法转换 Java该语言是用 Unicode 字符集编写的。 Java是预先定义的具有特别意义的标识符,也被称为Java保留字,Java不能用作变量名、方

    2024年02月14日
    浏览(54)
  • unity的C#学习——标识符号、关键字与数据类型及其转换方式

    标识符是用来识别 类、变量、函数 或任何其它用户定义的 项目 。在 C# 中,类的命名必须遵循如下基本规则: 标识符必须以 字母、下划线或 @ 开头,后面可以跟一系列的字母、数字( 0 - 9 )、下划线( _ )、@。 标识符中的第一个字符不能是数字。 标识符必须不包含任何

    2024年02月01日
    浏览(47)
  • C++ operator关键字的使用(重载运算符、仿函数、类型转换操作符)

    C++ operator的使用(重载运算符、仿函数、类型转换操作符) C++11实用技术(一)auto与decltype的使用 C++11实用技术(二)std::function和bind绑定器 C++11实用技术(三)std::future、std::promise、std::packaged_task、async C++11 中,operator 是一个,用于重载运算符。通过重载运算符

    2024年02月14日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包