注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计TypeScript入门与实战

TypeScript入门与实战

TypeScript入门与实战

定 价:¥99.00

作 者: 钟胜平 著
出版社: 机械工业出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787111669722 出版时间: 2020-12-01 包装: 平装
开本: 16开 页数: 408 字数:  

内容简介

  本书系统化介绍TypeScript程序设计,包括四大部分。 第一篇“初识TypeScript”介绍TypeScript与JavaScript的关系以及快速开始编写第一个TypeScript程序。 第二篇“ TypeScript语言概览”介绍TypeScript语言基础、迭代器与生成器、装饰器、命名空间、模块等。 第三篇“TypeScript类型系统”介绍TypeScript类型,如面量、枚举、非Nullable、非Nullable等,还介绍了更多高级类型,如联合、交叉、索引、映射对象、泛型、类类型、接口、类型别名、多态的this、有条件类型、类型查询、类型断言等,最后介绍类型更深入内容,如类型声明合并、类型推论、类型兼容性、外部类型声明、编写声明文件等。 第四篇“TypeScript应用”通过综合案例介绍TypeScript的配置管理、开发技巧等。

作者简介

  钟胜平有近10年的Web开发经验以及若干TypeScript项目的开发经验。参与过多个大型项目的开发,涉及信息服务、工业自动化、医疗等领域,深入了解JavaScript及其应用,在工作中积累了大量经验,善于总结,乐于分享,写了大量技术文章。

图书目录

【篇 初识TypeScript】
第1章 TypeScript简介  2
1.1 什么是TypeScript  2
1.1.1 始于JavaScript,终于JavaScript  3
1.1.2 可选的静态类型  4
1.1.3 开放与跨平台  4
1.2 为什么要使用TypeScript  5
1.2.1 易于发现代码中的错误  5
1.2.2 提高生产力  6
1.2.3 支持JavaScript的特性  7
1.3 成功案例  8
1.3.1 Visual Studio Code  8
1.3.2 Angular  9
第2章 快速开始  10
2.1 在线编写并运行TypeScript  10
2.1.1 Hello World!  11
2.1.2 扩展功能:选择TypeScript版本  12
2.1.3 扩展功能:TypeScript配置项  12
2.2 本地编写并运行TypeScript  13
2.2.1 选择代码编辑器  13
2.2.2 安装Visual Studio Code  15
2.2.3 安装TypeScript  15
2.2.4 创建文件  16
2.2.5 编译程序  17
2.2.6 运行程序  18
2.2.7 可选步骤:设置默认构建任务  18
【第二篇 TypeScript语言概览】
第3章 TypeScript语言基础  22
3.1 变量  22
3.1.1 变量名  23
3.1.2 变量声明  23
3.2 注释  24
3.2.1 单行注释与多行注释  25
3.2.2 区域注释  25
3.3 数据类型  26
3.3.1 Undefined  27
3.3.2 Null  27
3.3.3 Boolean  27
3.3.4 String  27
3.3.5 Number  28
3.3.6 Symbol  28
3.3.7 Object  29
3.4 字面量  29
3.4.1 Null字面量  30
3.4.2 Boolean字面量  30
3.4.3 Number字面量  30
3.4.4 字符串字面量  30
3.4.5 模板字面量  30
3.5 对象  31
3.5.1 对象字面量  31
3.5.2 原型对象  32
3.6 数组  34
3.6.1 数组字面量  34
3.6.2 数组中的元素  34
3.7 函数  34
3.7.1 函数声明  34
3.7.2 函数表达式  35
3.7.3 箭头函数  36
第4章 TypeScript语言进阶  37
4.1 BigInt  37
4.1.1 创建BigInt  38
4.1.2 BigInt与Number  38
4.2 展开运算符  39
4.2.1 展开数组字面量  39
4.2.2 展开对象字面量  39
4.2.3 展开函数参数  39
4.3 解构  40
4.3.1 数组解构  40
4.3.2 对象解构  40
4.4 可选链运算符  40
4.4.1 基础语法  41
4.4.2 短路求值  41
4.5 空值合并运算符  42
【第三篇 TypeScript类型系统】
第5章 TypeScript类型基础  44
5.1 类型注解  44
5.2 类型检查  45
5.2.1 非严格类型检查  45
5.2.2 严格类型检查  45
5.3 原始类型  46
5.3.1 boolean  46
5.3.2 string  47
5.3.3 number  47
5.3.4 bigint  47
5.3.5 symbol与unique symbol  47
5.3.6 Nullable  50
5.3.7 void  53
5.4 枚举类型  54
5.4.1 数值型枚举  55
5.4.2 字符串枚举  56
5.4.3 异构型枚举  57
5.4.4 枚举成员映射  58
5.4.5 常量枚举成员与计算枚举成员  58
5.4.6 联合枚举类型  62
5.4.7 const枚举类型  65
5.5 字面量类型  66
5.5.1 boolean字面量类型  66
5.5.2 string字面量类型  67
5.5.3 数字字面量类型  67
5.5.4 枚举成员字面量类型  68
5.6 单元类型  68
5.7 类型  69
5.7.1 any  69
5.7.2 unknown  71
5.7.3 小结  73
5.8 尾端类型  74
5.8.1 never  74
5.8.2 应用场景  75
5.9 数组类型  76
5.9.1 数组类型定义  76
5.9.2 数组元素类型  78
5.9.3 只读数组  79
5.10 元组类型  80
5.10.1 元组的定义  80
5.10.2 只读元组  81
5.10.3 访问元组中的元素  82
5.10.4 元组类型中的可选元素  83
5.10.5 元组类型中的剩余元素  83
5.10.6 元组的长度  84
5.10.7 元组类型与数组类型的兼容性  85
5.11 对象类型  85
5.11.1 Object  86
5.11.2 object  89
5.11.3 对象类型字面量  91
5.11.4 弱类型  97
5.11.5 多余属性  97
5.12 函数类型  102
5.12.1 常规参数类型  102
5.12.2 可选参数类型  102
5.12.3 默认参数类型  104
5.12.4 剩余参数类型  105
5.12.5 解构参数类型  106
5.12.6 返回值类型  106
5.12.7 函数类型字面量  108
5.12.8 调用签名  109
5.12.9 构造函数类型字面量  110
5.12.10 构造签名  111
5.12.11 调用签名与构造签名  111
5.12.12 重载函数  112
5.12.13 函数中this值的类型  118
5.13 接口  119
5.13.1 接口声明  119
5.13.2 属性签名  120
5.13.3 调用签名  120
5.13.4 构造签名  121
5.13.5 方法签名  121
5.13.6 索引签名  122
5.13.7 可选属性与方法  125
5.13.8 只读属性与方法  126
5.13.9 接口的继承  127
5.14 类型别名  129
5.14.1 类型别名声明  129
5.14.2 递归的类型别名  130
5.14.3 类型别名与接口  132
5.15 类  133
5.15.1 类的定义  134
5.15.2 成员变量  135
5.15.3 成员函数  138
5.15.4 成员存取器  138
5.15.5 索引成员  140
5.15.6 成员可访问性  140
5.15.7 构造函数  143
5.15.8 参数成员  144
5.15.9 继承  145
5.15.10 实现接口  150
5.15.11 静态成员  151
5.15.12 抽象类和抽象成员  153
5.15.13 this类型  155
5.15.14 类类型  156
第6章 TypeScript类型进阶  158
6.1 泛型  158
6.1.1 泛型简介  159
6.1.2 形式类型参数  160
6.1.3 实际类型参数  161
6.1.4 泛型约束  162
6.1.5 泛型函数  165
6.1.6 泛型接口  167
6.1.7 泛型类型别名  168
6.1.8 泛型类  169
6.2 局部类型  170
6.3 联合类型  171
6.3.1 联合类型字面量  171
6.3.2 联合类型的类型成员  173
6.4 交叉类型  176
6.4.1 交叉类型字面量  176
6.4.2 交叉类型的类型成员  178
6.4.3 交叉类型与联合类型  180
6.5 索引类型  181
6.5.1 索引类型查询  182
6.5.2 索引访问类型  185
6.5.3 索引类型的应用  186
6.6 映射对象类型  187
6.6.1 映射对象类型声明  187
6.6.2 映射对象类型解析  188
6.6.3 映射对象类型应用  188
6.6.4 同态映射对象类型  190
6.7 条件类型  196
6.7.1 条件类型的定义  196
6.7.2 分布式条件类型  197
6.7.3 infer关键字  199
6.8 内置工具类型  201
6.8.1 Partial  201
6.8.2 Required  202
6.8.3 Readonly  202
6.8.4 Record  202
6.8.5 Pick  202
6.8.6 Omit  203
6.8.7 Exclude  203
6.8.8 Extract  203
6.8.9 NonNullable  203
6.8.10 Parameters  204
6.8.11 ConstructorParameters  204
6.8.12 ReturnType  204
6.8.13 InstanceType  205
6.8.14 ThisParameterType  205
6.8.15 OmitThisParameter  206
6.8.16 ThisType  206
6.9 类型查询  206
6.10 类型断言  207
6.10.1 类型断言  208
6.10.2 as T类型断言  208
6.10.3 类型断言的约束  209
6.10.4 const类型断言  210
6.10.5 !类型断言  212
6.11 类型细化  213
6.11.1 类型守卫  214
6.11.2 可辨识联合类型  225
6.11.3 赋值语句分析  232
6.11.4 基于控制流的类型分析  233
6.11.5 断言函数  233 第7章 TypeScript类型深入  238
7.1 子类型兼容性  238
7.1.1 类型系统可靠性  239
7.1.2 子类型的基本性质  239
7.1.3 类型与尾端类型  240
7.1.4 原始类型  240
7.1.5 函数类型  241
7.1.6 对象类型  245
7.1.7 泛型  249
7.1.8 联合类型  250
7.1.9 交叉类型  251
7.2 赋值兼容性  251
7.3 类型推断  253
7.3.1 常规类型推断  253
7.3.2 按上下文归类  255
7.4 类型放宽  256
7.4.1 常规类型放宽  256
7.4.2 字面量类型放宽  257
7.5 命名空间  261
7.5.1 命名空间声明  262
7.5.2 导出命名空间内的声明  263
7.5.3 别名导入声明  265
7.5.4 在多文件中使用命名空间  266
7.5.5 小结  269
7.6 模块  269
7.6.1 模块简史  269
7.6.2 ECMAScript模块  273
7.6.3 模块导出  273
7.6.4 模块导入  276
7.6.5 重命名模块导入和导出  278
7.6.6 针对类型的模块导入与导出 280
7.6.7 动态模块导入  284
7.6.8 --module  285
7.7 外部声明  286
7.7.1 外部类型声明  287
7.7.2 外部模块声明  292
7.8 使用声明文件  293
7.8.1 语言内置的声明文件  293
7.8.2 第三方声明文件  293
7.8.3 自定义声明文件  298
7.9 模块解析  299
7.9.1 相对模块导入  299
7.9.2 非相对模块导入  300
7.9.3 模块解析策略  301
7.9.4 模块解析策略之Classic  301
7.9.5 模块解析策略之Node  304
7.9.6 --baseUrl  308
7.9.7 paths  310
7.9.8 rootDirs  312
7.9.9 导入外部模块声明  312
7.9.10 --traceResolution  313
7.10 声明合并  314
7.10.1 接口声明合并  315
7.10.2 枚举声明合并  317
7.10.3 类声明合并  318
7.10.4 命名空间声明合并  318
7.10.5 扩充模块声明  321
7.10.6 扩充全局声明  322
【第四篇 TypeScript应用】
第8章 TypeScript配置管理  324
8.1 编译器  324
8.1.1 安装编译器  325
8.1.2 编译程序  326
8.2 编译选项  328
8.2.1 编译选项风格  328
8.2.2 使用编译选项  330
8.2.3 严格类型检查  331
8.2.4 编译选项列表  337
8.3 tsconfig.json  338
8.3.1 使用配置文件  338
8.3.2 编译选项列表  340
8.3.3 编译文件列表  342
8.3.4 声明文件列表  346
8.3.5 继承配置文件  348
8.4 工程引用  351
8.4.1 使用工程引用  352
8.4.2 工程引用示例  353
8.4.3 --build  354
8.4.4 solution模式  356
8.5 JavaScript类型检查  357
8.5.1 编译JavaScript  357
8.5.2 JavaScript类型检查  358
8.5.3 JSDoc与类型  360
8.6 三斜线指令  363
8.6.1 ///  364
8.6.2 ///  366
8.6.3 ///  367
第9章 TypeScript项目实践  371
9.1 TypeScript与Babel  371
9.1.1 Babel  372
9.1.2 TypeScript编译器  372
9.1.3 实例演示  374
9.1.4 注意事项  380
9.1.5 小结  381
9.2 TypeScript与webpack  381
9.2.1 webpack  381
9.2.2 实例演示  381
9.2.3 小结  385
9.3 TypeScript与ESLint  385
9.3.1 ESLint  386
9.3.2 实例演示  386
9.3.3 集成Visual Studio Code  390
9.3.4 小结  393
9.4 TypeScript与Visual Studio Code  393
9.4.1 代码格式化  394
9.4.2 组织模块导入语句  395
9.4.3 代码导航  395
9.4.4 快速修复  396
9.4.5 重构工具  396
9.4.6 CodeLens  397

本目录推荐