Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >TypeScript 类型保护

TypeScript 类型保护

作者头像
Leophen
发布于 2020-08-05 07:41:31
发布于 2020-08-05 07:41:31
7370
举报
文章被收录于专栏:Web前端开发Web前端开发

TypeScript 中使用联合类型经常会有下面的错误出现:

这时就需要用到类型保护,类型保护允许你使用更小范围下的对象类型,常见的类型保护如下:

一、类型断言的类型保护

二、in 语法的类型保护

三、typeof 类型保护

先来看另一种常见的错误:

通过 typeof 类型保护:

四、instanceof 类型保护

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-08-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
TypeScript 官方手册翻译计划【二】:普通类型
在这一章中,我们的内容会涉及到 JavaScript 代码中最常见的一些数据类型,同时也会解释这些类型在 TypeScript 中的对应描述方式。本章节并不会详尽介绍所有类型,在后续章节中我们还会介绍更多命名和使用其它类型的方法。
Chor
2021/11/29
2.3K0
如何在TypeScript中使用类型保护
类型保护是一种TypeScript技术,用于获取变量类型信息,通常使用在条件块语句中。类型守卫是返回布尔值的常规函数,接受一个类型并告诉TypeScript是否可以缩小到更具体的类型。类型保护具有唯一的属性,可以确保测试的值是根据返回的布尔值设置的类型。
前端修罗场
2023/10/07
3230
TypeScript 官方手册翻译计划【三】:类型收缩
如果 padding 是 number 类型,那么它将作为 input 前缀空格的个数,如果它是 string 类型,那么它将直接作为 input 的前缀。现在我们尝试实现一下相关的逻辑,假定要给 padLeft 传入 number 类型的 padding 参数。
Chor
2021/11/29
2.1K0
TypeScript超详细入门教程(上)
同学你好,我是Lison。很高兴你对TypeScript感兴趣,或许你对TypeScript了解还不多,或许还有很多疑问,比如:
全栈程序员站长
2022/11/16
4.3K0
TypeScript超详细入门教程(上)
组合类型与类型保护_TypeScript笔记9
Object.assign能把source: U身上的可枚举属性浅拷贝到target: T上,因此返回值类型为T & U
ayqy贾杰
2019/06/12
1.6K0
TypeScript手记(六)
TypeScript 里,在有些没有明确指出类型的地方,类型推断会帮助提供类型。如下面的例子:
用户7572539
2020/08/26
1.1K0
TypeScript的另一面:类型编程
作为前端开发的趋势之一,TypeScript 正在越来越普及,很多人像我一样写了 TS 后再也回不去了,比如写再小的demo也要用 TS(得益于ts-node[1]),JS 只有在配置文件如Webpack(实际上,接下来肯定会有用TS写配置文件的趋势,如Vite)、ESLint等时才会用到。但同样,也有部分开发者对TS持有拒绝的态度,如nodemon的作者就曾表示自己从来没有使用过TS(见 #1565[2])。但同样还有另外一部分人认为TS学习成本太高,所以一直没有开始学习的决心。
zz_jesse
2021/07/30
1.7K0
TypeScript学习笔记(二)—— TypeScript基础
JavaScript 的类型分为两种:原始数据类型(Primitive data types)和对象类型(Object types)。
张果
2022/10/04
5.1K0
TypeScript学习笔记(二)—— TypeScript基础
【TypeScript】007-类型断言
在 tsx 语法(React 的 jsx 语法的 ts 版)中必须使用前者,即 值 as 类型。
訾博ZiBo
2025/01/06
660
分享 30 道 TypeScript 相关面的面试题
在当今的 Web 开发世界中,TypeScript 作为一种强大的工具为自己赢得了一席之地,它弥补了 JavaScript 的灵活性和静态类型语言的鲁棒性之间的差距(至少在 JavaScript 实现自己的类型之前)。
前端达人
2023/09/25
1.3K0
分享 30 道 TypeScript 相关面的面试题
在 TypeScript 中使用类型守卫的 5 种方式,你都知道吗
类型守卫是一种TypeScript技术,用于获取变量类型信息,通常使用在条件块语句中。类型守卫是返回布尔值的常规函数,接受一个类型并告诉TypeScript是否可以缩小到更具体的类型。类型守卫具有唯一的属性,可以确保测试的值返回的是布尔值类型。
前端修罗场
2022/07/29
2.3K0
Typescript常看常新
在看了同事推荐的ts教程后,发现自己还是有很多不会的,所以整理出一些自己学到的新知识点,希望各位也能有所收获!(我就写给自己看看,不要太当回事哈哈哈
y191024
2024/01/22
2590
Typescript常看常新
TypeScript 5.3
这些属性的内容不会被TypeScript检查,因为它们是特定于主机的,并且只是单独留下,以便浏览器和运行时可以处理它们(可能是错误)。
星宇大前端
2023/11/30
2810
5个非常有用的TypeScript Typeof操作符技巧
在JavaScript中,你可以通过 typeof 操作符获得变量的类型,那么你知道TypeScript中使用的 typeof 操作符是什么吗? 在本文中,我将介绍5种常见的typeof操作符的应用场景,您可以在以后的项目中使用。
winty
2024/01/15
2230
5个非常有用的TypeScript Typeof操作符技巧
这 5 个 TypeScript 的功能特征,你需要熟悉下
英文 | https://betterprogramming.pub/top-5-typescript-features-you-should-master-2358db9ab3d5
前端达人
2021/09/08
1.3K0
TypeScript 联合类型的定义、使用场景和注意事项
在 TypeScript 中,联合类型(Union Types)是一种用于表示变量或参数可以具有多种类型的概念。它允许我们将多个类型中的一个或多个类型作为一个整体来使用。本文将详细介绍 TypeScript 联合类型的定义、使用场景和注意事项,并提供一些示例来帮助理解。
网络技术联盟站
2023/07/06
1.1K0
58. 精读《Typescript2.0 - 2.9》
我发现,许多写了一年以上 Typescript 开发者,对 Typescript 对理解和使用水平都停留在入门阶段。造成这个现象的原因是,Typescript 知识的积累需要 刻意练习,使用 Typescript 的时间与对它的了解程度几乎没有关系。
黄子毅
2022/03/14
1.1K0
理解 TypeScript 类型收窄
TypeScript 类型收窄就是从宽类型转换成窄类型的过程。类型收窄常用于处理联合类型变量的场景,一个常见的例子是非空检查:
阿宝哥
2020/04/17
4.7K1
基础篇:TypeScript用法与实战
这篇笔记,主要记录了自己最近在 typescript 实践中的经验。总结了常见的用法。
心谭博客
2020/04/21
6960
TypeScript
接口(interface)可以用于对【对象的形状(Shape)】进行描述,当然也可以使用interface 描述 class
九旬
2020/10/23
1.8K0
TypeScript
相关推荐
TypeScript 官方手册翻译计划【二】:普通类型
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档