qrcode

关注全栈修仙之路,一起学习进阶!

typescript

编写高效 TS 代码的一些建议

TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。本文阿宝哥将分享编写高效 TS 代码的 5 个建议,希望这些建议对大家编写 TS 代码能有一些帮助。 一、尽量减少重复代码对于刚接触 TypeScript 的小伙伴来说,在定义接口时,可能一不小心会出现以下类似的重复代码。比如:...

1.8W字|了不起的 TypeScript 入门教程(第二版)

阿宝哥第一次使用 TypeScript 是在 Angular 2.x 项目中,那时候 TypeScript 还没有进入大众的视野。然而现在学习 TypeScript 的小伙伴越来越多了,本文阿宝哥将从 16 个方面入手,带你一步步学习 TypeScript,感兴趣的小伙伴不要错过。 一、TypeScript 是什么TypeScript 是一种由微软开发的自由和开源的编程语言。它是 Java...

细数 TS 中那些奇怪的符号

TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。 本文阿宝哥将分享这些年在学习 TypeScript 过程中,遇到的 10 大 “奇怪” 的符号。其中有一些符号,阿宝哥第一次见的时候也觉得 “一脸懵逼”,希望本文对学习 TypeScript 的小伙伴能有一些帮助。 好的,下面...

一文读懂 TypeScript 泛型及应用

觉得 TypeScript 泛型有点难,想系统学习 TypeScript 泛型相关知识的小伙伴们看过来,本文从八个方面入手,全方位带你一步步学习 TypeScript 中泛型,详细的内容大纲请看下图: 一、泛型是什么软件工程中,我们不仅要创建一致的定义良好的 API,同时也要考虑可重用性。 组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型,这在创建大型系统时为你提供了十分灵活的功...

了不起的 TypeScript 入门教程

想学习 TypeScript 的小伙伴看过来,本文将带你一步步学习 TypeScript 入门相关的十四个知识点,详细的内容大纲请看下图: 一、TypeScript 是什么TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。 TypeScript 提供最新的和不断发展的 Jav...

在 TS 中如何减少重复代码

相信有些读者已经听说过 DRY 原则,DRY 的全称是 —— Don’t Repeat Yourself ,是指编程过程中不写重复代码,将能够公共的部分抽象出来,封装成工具类或者用抽象类来抽象公共的东西,从而降低代码的耦合性,这样不仅提高代码的灵活性、健壮性以及可读性,也方便后期的维护。 接下来,本文将介绍在 TypeScript 项目开发过程中,如何参考 DRY 原则尽量减少重复代码。减少...

理解 TypeScript 类型拓宽

一、类型拓宽之前的文章,我们已经介绍了 TypeScript 的类型收窄,本文我们将介绍 TypeScript 的类型拓宽。在一些情况下,TypeScript 从上下文推断类型,减少了程序员显式指定明显类型的需要。例如: 1let name = "semlinker"; 此时变量 name 的类型会被推断为 string 基本类型,因为这是用于初始化它的值的类型。从表达式推断变量、属性或函数...

理解 TypeScript 类型收窄

一、类型收窄TypeScript 类型收窄就是从宽类型转换成窄类型的过程。类型收窄常用于处理联合类型变量的场景,一个常见的例子是非空检查: 123456789// Type is HTMLElement | nullconst el = document.getElementById("foo");if (el) { // Type is HTMLElement el.inne...

读懂 TS 中联合类型和交叉类型的含义

联合类型在 TypeScript 中相当流行,你可能已经用过很多次了。交叉类型稍微不那么常见。它们似乎引起更多的困惑。 你有没有想过这些名字是怎么来的?虽然你可能对两种类型的并集有一些直观感受,但交集通常不太容易理解。 阅读本文之后,你将对这些类型有更好的了解,这将使你在代码中使用它们时更有信心。 一、简单的联合类型联合类型通常与 null 或 undefined 一起使用: 1const ...

TypeScript 非空断言

一、非空断言有啥用介绍非空断言前,先来看个示例: 123function sayHello(name: string | undefined) { let sname: string = name; // Error} 对于以上代码,TypeScript 编译器会提示一下错误信息: 12Type 'string | undefined' is not...