写给大忙人的现代JavaScript

0
(0)

写给大忙人的现代JavaScript

作者:【美】CayS.Horstmann

出版社:电子工业出版社

出品方:博文视点

原作名:ModernJavascriptfortheImpatient

译者:AliExpress&国际化中台体验技术团队

出版年:2021-9

页数:368

定价:109

ISBN:9787121415807

内容简介
······

《写给大忙人的现代JavaScript》是一本简明的现代 JavaScript 教程,不仅涵盖函数式编程、JS 语法、JS 库等基础性内容,还介绍了国际化、异步编程、标准模块系统、元编程等较为复杂的内容,并附加了 TypeScript 的相关知识。部分章节根据其难度的不同设置了相应的图标,以便读者选择性学习。本书力求使初学者不被过时的 JavaScript 所困扰,能够在实践中高效地学会使用现代 JavaScript,既适合 JavaScript 初学者入门使用,也适合有一定基础的程序员进阶学习。

作者简介
······

凯·霍斯特曼(Cay S. Horstmann),是享誉全球的编程语言教育家。他是Core Java第 11 版 I、II 卷(Pearson, 2018),Scala for the Impatient 第 2 版 ( Addison-Wesley, 2016 ), 以 及 Core Java SE 9 for the Impatient (Addison-Wesley, 2017)的主要作者,同时是美国圣何塞州立大学计算机科学名誉教授、Java Champion 称号获得者,以及计算机行业会议常驻演讲者。

目录
······

第 1 章 值与变量 1

1.1 运行 JavaScript 3

1.2 类型和 typeof 运算符 6

1.3 注释 7

1.4 变量声明 7

1.5 标识符 9

1.6 数字 10

1.7 运算符 12

1.8 布尔值 14

1.9 null 和 undefined 14

1.10 字符串字面量 15

1.11 模板字面量 17

1.12 对象 18

1.13 对象字面语法 19

1.14 数组 21

1.15 JSON 22

1.16 解构 23

1.17 高级解构 25

1.17.1 对象解构详谈 26

1.17.2 剩余参数声明 26

1.17.3 默认值 27

练习题 27

第 2 章 控制结构 29

2.1 表达式和语句 31

2.2 自动分号插入 33

2.3 分支 36

2.4 布尔值转换 38

2.5 数值比较 39

2.6 混合比较 40

2.7 布尔运算符 42

2.8 switch 语句 44

2.9 while 和 do 循环 45

2.10 for 循环 46

2.10.1 传统 for 循环 46

2.10.2 for-of 循环 47

2.10.3 for-in 循环 48

2.11 跳出(Break)与跳过(Continue) 50

2.12 捕获异常 52

练习题 54

第 3 章 函数与函数式编程 57

3.1 函数声明 59

3.2 高阶函数 61

3.3 函数字面量 61

3.4 箭头函数 62

3.5 函数数组处理 64

3.6 闭包 65

3.7 固定对象 67

3.8 严格模式 69

3.9 测试参数类型 71

3.10 可选参数 72

3.11 默认参数 73

3.12 Rest 参数与扩展运算符 73

3.13 解构模拟命名参数 75

3.14 函数提升 76

3.15 抛出异常 79

3.16 捕获异常 79

3.17 finally 子句 81

练习题 82

第 4 章 面向对象编程 85

4.1 JavaScript 方法 87

4.2 原型(prototype) 88

4.3 构造函数 91

4.4 类句法 93

4.5 getter 和 setter 94

4.6 实例域和私有方法 95

4.7 静态方法和域 96

4.8 子类 97

4.9 重写方法 99

4.10 构建子类 100

4.11 类表达式 101

4.12 this 的指向 102

练习题 106

第 5 章 数字和日期 109

5.1 数字字面量 111

5.2 数字格式化 112

5.3 数字解析 113

5.4 数字方法和常量 114

5.5 数学运算方法和常量 115

5.6 大整数 116

5.7 构造日期 117

5.8 日期函数和方法 121

5.9 日期格式化 122

练习题 123

第 6 章 字符串和正则表达式 125

6.1 字符串和码位序列的转换 127

6.2 字符串子集 128

6.3 其他字符串方法 130

6.4 带标签的模版字面量 133

6.5 原始模版字面量 134

6.6 正则表达式 135

6.7 正则表达式字面量 139

6.8 修饰符(标记) 139

6.9 正则表达式和 Unicode 编码 140

6.10 RegExp 类方法 142

6.11 分组 143

6.12 正则表达式相关的字符串方法 145

6.13 关于正则替换的更多内容 147

6.14 奇异特性 148

练习题 150

第 7 章 数组与集合 153

7.1 创建数组 155

7.2 长度和索引属性 157

7.3 删除和新增元素 158

7.4 其他数组操作 160

7.5 生成元素 162

7.6 查找元素 163

7.7 访问所有的元素 164

7.8 稀疏数组 166

7.9 减少 168

7.10 Map 171

7.11 Set 173

7.12 Weak Map 和 Set 174

7.13 Typed Array 175

7.14 数组缓冲区 178

练习题 179

第 8 章 国际化 183

8.1 本地化概念 185

8.2 指定本地环境 186

8.3 格式化数字 188

8.4 本地化日期和时间 190

8.4.1 格式化 Date 对象 190

8.4.2 日期范围 192

8.4.3 相对时间 192

8.4.4 格式化各个部分 192

8.5 比较规则 193

8.6 其他支持本地化设置的字符串方法 195

8.7 复数规则和列表 196

8.8 其他本地化特性 197

练习题 199

第 9 章 异步编程 201

9.1 JavaScript 中的并发任务 203

9.2 实现 Promise 206

9.3 立即完结的 Promise 209

9.4 获取 Promise 的结果 210

9.5 Promise 的链式调用 210

9.6 Promise 的失败处理 213

9.7 执行多个 Promise 214

9.8 多个 Promise 的竞速 215

9.9 Async 函数 216

9.10 Async 返回值 218

9.11 并行 await 221

9.12 Async 方法中的异常 222

练习题 223

第 10 章 模块 227

10.1 模块的概念 229

10.2 ECMAScript 模块 230

10.3 默认引入 231

10.4 具名引入 231

10.5 动态引入 232

10.6 导出 233

10.6.1 具名导出 233

10.6.2 默认导出 234

10.6.3 导出变量 235

10.6.4 重新导出 236

10.7 打包模块 237

练习题 238

第 11 章 元编程 241

11.1 Symbol 243

11.2 定制 Symbol 属性 245

11.2.1 定制 toString 245

11.2.2 控制类型转换 246

11.2.3 Specy 247

11.3 属性的特性 248

11.4 枚举属性 250

11.5 测试单个属性 252

11.6 保护对象 252

11.7 创建或更新对象 253

11.8 访问和更新原型 254

11.9 克隆对象 254

11.10 函数属性 257

11.11 绑定参数和调用方法 258

11.12 代理 260

11.13 Reflect Class 262

11.14 Proxy 不变量 265

练习题 267

第 12 章 迭代器与 Generator 271

12.1 可迭代的数据类型 273

12.2 实现一个迭代器 275

12.3 可中断的迭代器 278

12.4 Generator 279

12.5 嵌套的 Yield 表达式 281

12.6 将生成器函数作为消费者 283

12.7 生成器和异步处理 285

12.8 异步生成器和迭代器 287

练习题 290

第 13 章 TypeScript 295

13.1 类型注解 298

13.2 运行 TypeScript 299

13.3 类型术语 301

13.4 基本类型 302

13.5 联合类型 303

13.6 类型推断 305

13.7 子类型 309

13.7.1 替代规则 309

13.7.2 可选属性及多余属性 310

13.7.3 数组和对象类型的变换 311

13.8 类 313

13.8.1 类声明 313

13.8.2 类的实例类型 315

13.8.3 类的静态类型 316

13.9 结构类型 317

13.10 接口 318

13.11 索引属性 320

13.12 复杂函数参数 321

13.12.1 可选、默认和剩余参数 322

13.12.2 解构参数 323

13.12.3 函数类型型变 324

13.12.4 重载 326

13.13 泛型编程 328

13.13.1 泛型类和类型 329

13.13.2 泛型函数 330

13.13.3 类型绑定 331

13.13.4 类型擦除 332

13.13.5 泛型的型变 333

13.13.6 条件类型 334

13.13.7 映射类型 335

练习题 336

评论 ······

作者说这本书是面向懂Java或类似语言想学习JavaScript的读者,我目前看到的部分每个知识点都讲的简略,且很多地方尝试用与Java做对比的方式阐述。所以后端开发者想了解前端可以读读这本书。但不适合通过js初涉编程且想要厘清js重难点的人,比如我。

作者说这本书是面向懂Java或类似语言想学习JavaScript的读者,我目前看到的部分每个知识点都讲的简略,且很多地方尝试用与Java做对比的方式阐述。所以后端开发者想了解前端可以读读这本书。但不适合通过js初涉编程且想要厘清js重难点的人,比如我。

点击星号评分!

平均分 0 / 5. 投票数: 0

还没有投票!请为他投一票。

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册