【TypeScript】ts中的类型别名(Type)的介绍和使用

简言

类型别名(Type)的介绍和使用。
类型别名特别常用。

类型别名

类型别名就是用关键词type声明的类型:

//	Name类型
type Name = string

类型特别简单,他的作用就是定义一个类型的别名,这个类型可以是简单基础类型,也可以是复杂的类型。

搭配基础类型

可以给基础类型取个别名:

type Name = string

Name类型和string基础类型相同。

搭配复杂类型

type Point = {x: number;y: number;
};// 与前面的示例完全相同
function printCoord(pt: Point) {console.log("The coordinate's x value is " + pt.x);console.log("The coordinate's y value is " + pt.y);
}printCoord({ x: 100, y: 100 });type GreetFunction = (a: string) => void;
function greeter(fn: GreetFunction) {// ...
}

搭配联合

使用联合,可以声明类型可以是许多类型中的一种:

type WindowStates = "open" | "closed" | "minimized";
type LockStates = "locked" | "unlocked";
type PositiveOddNumbersUnderTen = 1 | 3 | 5 | 7 | 9;

上面的 WindowStates类型意思是"open" 、"closed"和"minimized"三种字符串(字面量类型)的一种。

搭配泛型

泛型为类型提供变量。
可以使用类型别名来定义,供多处使用

type StringArray = Array<string>;const arr:StringArray = []
const arr2:StringArray = []

和接口区别

类型别名和接口非常相似,在大多数情况下你可以在它们之间自由选择。 几乎所有的 interface 功能都可以在 type 中使用。
关键区别在于类型别名不能重新开放类型以添加新的属性,而接口始终是可扩展的(可合并)。
在这里插入图片描述

结语

结束了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/703666.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

U盘中毒文件变乱码?揭秘原因与高效恢复方法!

在日常使用U盘的过程中&#xff0c;有时我们会遭遇到一个非常棘手的问题——文件突然出现乱码。当你满怀期待地插入U盘&#xff0c;准备打开某个重要文件时&#xff0c;却发现文件名或内容变成了一堆无法识别的字符&#xff0c;这种心情无异于晴天霹雳。乱码文件不仅影响了我们…

前端面试题(二十三)(答案版)

面试形式&#xff1a;线上电话面试&#xff1a;一面&#xff1a;时长30分钟 面试评价&#xff1a;精准考察项目所需技术理论工作实践 面试官的提问大纲&#xff1a;本公司项目要求本人简历 工作经验&#xff1a;2-4年 公司名称&#xff1a;深圳XX&#xff08;想知道的就滴喔…

数据结构(十五)----排序算法(2)

目录 一.选择排序 1.简单选择排序 2.堆排序 •建立大根堆 •基于大根堆进行排序 堆排序算法效率&#xff1a; 堆排序算法稳定性&#xff1a; 3.堆的插入和删除 •在堆中插入新元素 •在堆中删除元素 二.归并排序 归并排序算法效率&#xff1a; 归并排序算法的稳定…

迭代的难题:敏捷团队每次都有未完成的工作,如何破解?

各位是否遇到过类似的情况&#xff1a;每次迭代结束后&#xff0c;团队都有未完成的任务&#xff0c;很少有完成迭代全部的工作&#xff0c;相反&#xff0c;总是将上期未完成的任务重新挪到本期计划会中&#xff0c;重新规划。敏捷的核心之一是“快速迭代&#xff0c;及时反馈…

【全开源】JAVA语聊大厅语音聊天APP系统源码

语聊大厅语音聊天源码&#xff1a;打造专属的语音社交平台 核心功能 多人语音聊天&#xff1a;支持多人同时在线语音聊天&#xff0c;用户可以创建或加入不同的聊天室&#xff0c;与好友或陌生人进行实时互动。语音转文字&#xff1a;提供语音转文字功能&#xff0c;方便用户…

AI交互数字人赋能农业数字化、智能化推广营销

2024陵水荔枝文化节上“数字新农人”陵小荔身着黎族服饰、佩戴银器亮相开幕式现场&#xff0c;AI交互数字人生动地以互动式推介和歌舞等形式&#xff0c;带领宾客们了解陵水荔枝的发展历程、产业布局、未来愿景等。如今&#xff0c;越来越多农产品品牌通过3D虚拟数字人定制&…

PyQt5多线程全面系统地学习

文章目录 1. 基础知识1.1 简介1.1.1 多线程与多进程的概念多线程 (Multithreading)多进程 (Multiprocessing)1.1.2 多线程与多进程的区别1.1.3 应用场景多线程应用场景多进程应用场景 1.2 Python标准库中的线程与进程库1.2.1 threading 模块基本概念1.2.2 总结 2. PyQt5的多线程…

HTML5+CSS3 将图片和文字置于一行

将文字对齐图片中心的水平位置 今天课堂作业上有一段是要做出文字与图片在一行且文字对齐图片的中心位置。课上用inline-block做的&#xff0c;但盒子总是不受控制。于是回来随便找了个图片用vertical-align做成功了。 这是原本的样式&#xff08;加了边框方便看盒子&#xff…

你写HTML的时候,会注重语义化吗?

其实说到语义化&#xff0c;多年前端开发经验的老手估计也不会太在意&#xff0c;有时候工期太紧&#xff0c;有时候自己疏忽&#xff0c;也就不那么在意了&#xff0c;直接DIVCSS一把梭下去了。 目录 什么是HTML 什么是HTML语义化 HTML语义化所带来的好处 我把CSS样式引入…

氮气柜开门停止充氮、开门亮灯和超湿报警功能介绍

氮气柜是一种专门设计用于存储对湿度敏感的电子元器件、半导体材料、精密仪器、化学试剂等物品的设备&#xff0c;它通过注入高纯度氮气来降低内部湿度&#xff0c;以防止物品受潮或氧化。除基本功能外&#xff0c;沐渥科技新增了开门停止充氮、开门亮灯以及超湿报警这三个功能…

vmstat命令详解

好的&#xff0c;以下是 vmstat 输出中各个部分及其字段的中文含义&#xff1a; 1. 进程 (Procs) r (运行队列) 含义: 等待CPU执行的进程数量。如果这个数字大于CPU数量&#xff0c;可能表示系统过载。 b (阻塞进程) 含义: 当前处于不可中断睡眠状态的进程数量&#xff0c;通…

国内企业更喜欢私有化部署的 6 大原因

今天在 V 站看到一篇题为《为什么国内企业会更倾向于接受私有部署而不是 SaaS&#xff1f;》的帖子&#xff0c;觉得很有启发&#xff0c;这里把网友的观点稍作整理和总结&#xff0c;分享给大家参考。 在技术日益发展的今天&#xff0c;国内企业的软件部署方式似乎呈现出与欧…