类型别名和字符串字面量类型(使用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 进行定义

相关推荐
爱勇宝10 小时前
第 1 章:别把“需求文档”当成真正的需求
前端·后端·程序员
梨子同志11 小时前
常用命令
前端
梨子同志11 小时前
React 状态管理
前端
Dxy123931021611 小时前
MySQL索引完整教程:创建、查看、修改、删除与日常管理
前端·javascript·mysql
剪刀石头布啊12 小时前
js能被遍历的集合有哪些特征,为何能被遍历
前端
剪刀石头布啊12 小时前
js解构
前端
剪刀石头布啊12 小时前
防抖功能的逐步递进
前端
剪刀石头布啊12 小时前
对象的大小比较与面向对象思考
前端
最爱老式锅包肉14 小时前
《HarmonyOS技术精讲-ArkWeb》桥接两岸:JSBridge原生与Web互调
前端·华为·harmonyos
IT_陈寒15 小时前
闭包陷阱让我加了两天班,JavaScript你真行
前端·人工智能·后端