摘要: 1、与文件相关的选项 如果 tsconfig.json 中没有任何配置,编译器就会按照默认的配置编译当前目录下的所有 ts 文件,包括三种类型 ts, d.ts, tsx // tsconfig.json { "files": [ // 数组,表示编译器需要编译的单个文件的列表 "src/a.ts" 阅读全文
posted @ 2020-03-05 21:16 rogerwu 阅读(2539) 评论(0) 推荐(0) 编辑
摘要: 1、命名空间 ts 中的 “命名空间” 就是之前的 “内部模块”,任何使用 module 关键字来声明一个内部模块的地方都应该使用 namespace 关键字来替换 // ts 中的“内部模块” (废弃) module X { } // ts 中的“命名空间” (推荐) namespace X { 阅读全文
posted @ 2020-02-08 21:11 rogerwu 阅读(1544) 评论(0) 推荐(1) 编辑
摘要: 1、ES6模块系统 1-1、export 导出 (1)、单独导出 // a.ts export let a = 1; (2)、批量导出 // a.ts let b = 2; let c = 3; export { b, c }; (3)、导出接口 // a.ts export interface I 阅读全文
posted @ 2020-02-02 00:03 rogerwu 阅读(2693) 评论(0) 推荐(0) 编辑
摘要: 1、交叉类型 将多个类型合并成一个类型,新的类型将具有所有类型的特性,适用于对象混用 语法: 类型1 & 类型2 & 类型3 interface CatInterface { run(): void } interface DogInterface { jump(): void } // 交叉类型具 阅读全文
posted @ 2020-01-29 23:29 rogerwu 阅读(1134) 评论(0) 推荐(0) 编辑
摘要: 一、类型兼容性 ts 允许类型兼容的变量相互赋值,这个特性增加了语言的灵活性 当一个 类型Y 可以被赋值给另一个 类型X 时,就可以说类型X兼容类型Y。其中,X被称为“目标类型”,Y被称为“源类型” X兼容Y : X(目标类型) = Y(源类型) 1、结构之间兼容:成员少的兼容成员多的 基本规则是, 阅读全文
posted @ 2020-01-19 10:48 rogerwu 阅读(2967) 评论(0) 推荐(0) 编辑
摘要: 1、什么是泛型? 不预先确定的数据类型,具体的类型在使用的时候才能确定 function log<T>(value: T) { return value; } // 调用方式 log<string[]>(['a', 'b']) // 还可以根据类型推断省略掉类型的参数 log(['a', 'b']) 阅读全文
posted @ 2020-01-16 15:40 rogerwu 阅读(585) 评论(0) 推荐(0) 编辑
摘要: 1、es类 vs ts类 相同点:类成员的属性都是实例属性,而不是原型属性;类成员的方法都是原型方法 不同点:ts 中类成员的属性必须有初始值,或者是在构造函数中被初始化 class Dog { constructor(name: string) { this.name = name; } name 阅读全文
posted @ 2020-01-14 23:03 rogerwu 阅读(500) 评论(0) 推荐(0) 编辑
摘要: 1、强类型语言与弱类型语言 (1)、强类型语言 通俗定义:强类型语言不允许改变变量的数据类型,除非进行强制类型转换 在强类型语言中,当一个对象从调用函数传递到被调用函数时,其类型必须与被调用函数中声明的类型兼容 (2)、弱类型语言 在弱类型语言中,变量可以被赋予不同的数据类型 let x = 1; 阅读全文
posted @ 2020-01-14 15:58 rogerwu 阅读(807) 评论(0) 推荐(0) 编辑
摘要: 1、函数的定义方式(4种) // (1)、命名函数 function add1(x: number, y: number): number { return x + y; } // (2)、匿名函数 let add2:(x: number, y: number) => number = functi 阅读全文
posted @ 2020-01-14 15:53 rogerwu 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 接口可以用来约束对象、函数以及类的结构和类型,这是一种代码协作的契约,调用该接口时必须遵守,不能改变 ts与其它语言不同的是,并没有 “实现” 接口这个概念,而是只关注值的外形,只要传入的对象满足上面的必要条件,那么它就是被允许的。这就是所谓的“鸭式辩型法”(像鸭子一样走路、游泳和嘎嘎叫的鸟就是鸭子 阅读全文
posted @ 2020-01-14 11:16 rogerwu 阅读(734) 评论(0) 推荐(0) 编辑