类型别名和字符串字面量类型(使用type)

类型别名

类型别名就是使用 type 来给一个类型起个新名字,类型别名常用于联合类型。

js 复制代码
type manyType = number | boolean | string;
let a: manyType
a = 0o700;
console.log(a);
a = true;
console.log(a);
a = 'Gloria';
console.log(a);
//以上编译都不会报错,指定自定义的manyType类型的变量可以是number类型也可以是string和boolean类型

字符串字面量类型

字符串字面量类型用来约束取值只能是某几个字符串中的一个。

js 复制代码
type EventNames = 'click' | 'scroll' | 'mousemove';
function handleEvent(ele: Element, event: EventNames) {
    // do something
}
handleEvent(<Element>document.getElementById('hello'), 'scroll');  // 编译没问题
handleEvent(<Element>document.getElementById('world'), 'dblclick'); // 编译报错,event 不能为 'dblclick'
即形参 event只能是click和scroll以及mousemove三个字符串之一。

类型别名与字符串字面量类型都是使用 type 进行定义

相关推荐
Csvn13 小时前
🧩「找不到模块」排查全记录——Monorepo 下 TypeScript 路径别名的 5 种「不通」与根治方案
前端
腻害兔13 小时前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:字典、短信、邮件、通知——后台系统的“基础设施四件套“!
java·前端·vue.js·产品经理·ai编程
CodexDave13 小时前
MySQL事务隔离级别与MVCC机制解析
前端·数据库·mysql·nginx·性能优化·负载均衡
Ai_easygo14 小时前
AI Agent开发入门——从ReAct到Tool Calling,拆解Agent的底层运行逻辑
前端·人工智能·react.js
研☆香14 小时前
分析制作html页面,如何划分页面结构
前端
腻害兔14 小时前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:支付模块 yudao-module-pay,一个让产品经理都看懂的支付中台设计
java·前端·vue.js·产品经理·ai编程
kyriewen14 小时前
我扒了最近的前端面经——2026年面试不背八股文了,考这5样
前端·面试·ai编程
IT_陈寒15 小时前
Redis的持久化配置把我坑惨了:你以为数据安全了?
前端·人工智能·后端
小徐_233315 小时前
uni-app 项目别再从零搭了!3 个 Wot UI 起手模板怎么选?
前端·uni-app
赵庆明老师16 小时前
Vben精讲:16-熟悉Vite前端工具链
前端