随笔分类 - 50-01. TS :TypeScript
摘要:类型声明 声明文件可以让我们不需要将JS重构为TS,只需要加上声明文件就可以使用系统 类型声明在编译的时候都会被删除,不会影响真正的代码 1 普通类型声明 // 其它类型声明 declare let name: string; // 变量 declare let age: number; // 变量
阅读全文
摘要:模块 VS 命名空间 一个文件就是一个模块,模块通过 export [default] 、import 来导出、导入。 同一个文件内,可以有多个命名空间,命名空间内 export 导出的内容,可以在外部访问到。 模块 模块是TS中外部模块的简称,侧重于代码和复用 模块在其自身的作用域里执行,而不是在
阅读全文
摘要:类型变换 前言:TS 要区分类型和值 关键字 作为类型使用 作为值使用 class y y enum(枚举) y y interface(接口) y n type y n function n y var/let/const n y 接口是不能当做 值 来用的,比如我们不能把一个接口赋值给另一个接口
阅读全文
摘要:类型保护 类型保护就是一些表达式,他们在编译的时候就能通过类型信息确保某个作用域内变量的类型 类型保护就是能够通过关键字判断出分支中的类型 1 typeof 类型保护 function double(input: string | number | boolean) { if (typeof inp
阅读全文
摘要:结构类型系统 1. 接口的兼容性 如果传入的变量和声明的类型不匹配,TS就会进行兼容性检查 原来是Duck-Check,就是说只要目标类型中声明的属性变量在原类型中都存在就是兼容的 // TS 不关心类型,只比较属性,属性可以多,不能少 interface Animal { name: string
阅读全文
摘要:泛型 泛型(Generics)是指在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性 泛型T作用域只限于函数内部使用 什么叫泛型?在定义一个值的类型的时候,先不指定具体的类型,在执行的时候,才确定具体的类型。 什么时候用泛型?定义函数、类 1 泛型函数 为什么会有泛
阅读全文
摘要:学TS核心,要学会两个重点:1. 接口 2. 泛型 接口 接口一方面可以在面向对象编程中表现为行为的抽象,另外可以用来描述对象的形状 接口就是把一些类中共有得属性和方法抽象出来,可以用来约束实现此接口的类 一个类可以继承另一个类并实现多个接口 接口就像插件一样是用来增强类的,而抽象类是具体类的抽象概
阅读全文
摘要:类 1. 如何定义类 "strictPropertylnitialization": true 启用类属性初始化的严格检查 name!: string namespace a { // 设置独立的命名空间,防止类名重复而报错 class Person{ name: string = "ruhua";
阅读全文
摘要:TS 中的函数 type 用来定义一个 类型 或者 类型别名 1. 函数的定义 可以指定参数的类型和返回值的类型 function hello(name: string): void { console.log(name); }; hello("ruhua") 2. 函数表达式 定义函数类型 typ
阅读全文
摘要:1. typescript是什么? TS是有微软开发的一款开源的编程语言 TS是JS的超集,遵循最新的ES5、ES6规范,TS扩展了JS的语法 TS更像后端Java/C#这样的面向对象语言可以让JS开发大型企业应用 越来越多的项目基于TS的,比如VSCode、Angela6、Vue3、React16
阅读全文
摘要:ts几乎支持js所有的数据类型,并扩展了枚举方便我们使用。 1. 布尔值(boolean) 和其它语言一样 true/false let isDone:boolean = false; 2. 数字(number) 和js一样,所有的数字都是浮点数,这些浮点数的类型是,支持二,十,十六,八 进制字面量
阅读全文
摘要:一、从定义文件格式方面说 1、传统的开发模式可以定义js文件或者jsx文件2、利用ts开发定义的文件格式tsx 二、定义state的状态来说 1、传统的方式直接在构造函数中使用 constructor(){ this.state = { num1:10 }}2、使用ts开发过程中需要先定义一个接口,
阅读全文

浙公网安备 33010602011771号