搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
出版时间 :
写给大忙人的现代JavaScript(博文视点出品)
0.00     定价 ¥ 109.00
泸西县图书馆
此书还可采购1本,持证读者免费借回家
  • ISBN:
    9787121415807
  • 作      者:
    [美]Cay,S.,Horstmann(凯・霍斯特曼)
  • 译      者:
    AliExpress,&,国际化中台体验技术团队
  • 出 版 社 :
    电子工业出版社
  • 出版日期:
    2021-07-01
收藏
荐购
编辑推荐

面向现代JS既完整又简捷的学习指南。读者真正可以从0开始起步,直接掌握功能更强大且更易驾驭的现代JavaScript,快速将其应用于商业环境,提高效率与产出。本书也可帮助读者实现从Java,C#,C或C ++等语言JavaScript的快速转型。

√ 快速掌握现代JavaScript的基本编程结构

√ 避免使用会一些增加风险和复杂度的过时功能

√ 充分利用函数式,面向对象和异步编程

√ 使用模块来高效的组织和运行复杂的程序

√ 了解高级JavaScript技术,例如元编程和generator

√ 学习如何使用TypeScript让你的代码更安全

展开
作者简介

作者凯・霍斯特曼(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 称号获得者,以及计算机行业会议常驻演讲者。

译者为阿里巴巴国际体验技术团队,由AliExpress前端和国际化中台前端组成。团队核心业务覆盖欧美电商平台AliExpress、东南亚电商平台Lazada、南亚电商平台Daraz及其他全球时尚电商品牌。其中AliExpress是全球第二大的电商平台,且在部分重点国家已超越亚马逊。技术团队有着丰富的JavaScript开发经验,在复杂的国际业务场景中,有着面向大前端的极强业务能力。而且,他们对JavaScript底层原理的深入理解、新特性的及时更新长期关注,与本书定位高度契合,对本书翻译品质的保障有很好的加持效果。

展开
内容介绍

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

展开
精彩书评

本书的内容与书名非常贴合,确实是写给大忙人看的,内容上做到了简明扼要、除旧布新。同时,书中包含了作者想传达给作者的一些经验技巧,让人有耳目一新的感觉。相信你在阅读的过程中也一定会有同样的收获!

——陈新

前端技术不断推陈出新,前端从业者叫着“学不动了”,其根本原因在于“没时间+要学的内容太多”,而 “for 大忙人+精简”是本书的特征。

——王志强

本书用大量篇幅阐述原理、剖析本质,旨在帮助读者建立正确的前端基础理论体系。“万丈高楼平地起,勿在浮沙筑高台”,互联网行业正在经历新一轮井喷式的发展,在诱惑面前不动声色,潜心钻研,才是成长为“前端大神”的唯一通途。

——孙承祚

如果你想要学习 JS 却苦于没有太多的时间,又希望能够比较全面地了解前端知识,那么本书是一个很好的选择。本书用简短的篇幅和精炼的语言阐释了前端知识及其新特性。

——陈松若

本书结合 ECMAScript 新特性,从语法到语言层面都给出了新颖有趣的阐述,并且每章结尾附有习题,有助于读者回顾章节中的知识。希望本书能帮助“大忙人” 读者理解并掌握这些新知识。

——张明

本书作者对 ECMAScript 标准的理解不只限于表面,而是深入标准背后的原因以及讨论过程。通过阅读此书,读者可以详细地了解这些标准的由来。希望本书可以帮助读者更深入地参与到社区建设中来。

——杨宇豪

如今国际化势头正盛,国际化意味着你的产品将有更多潜力,而本地化能让你的产品适用于各个特定的地区。本地化通常表现为多语言、多时区、多币种,本书是关于 JS 本地化的一个良好开端。

——毛训星

“高端的食材,往往只需要最朴素的烹饪方式”——优美的代码,只需要利用原生的数组和集合操作。

——黄劲森

化繁为简、深入浅出并非易事,这要求讲解者本身有着扎实的知识体系和深刻的理解能力。但本书的作者做到了!愿君悦读,终有收获。

——蒋慧

本书虽为“大忙人”所著,但并非简单的 API 堆砌。恰到好处的例子,附上启发式的习题,全书虽篇幅不长,却能帮助读者夯实基础。愿读者皆有所受益,这也是本书的意义所在。

——韩章裕

JS 语言变化非常之快,本书详细介绍了 JS 的新语法,比如元编程模块,可以帮助读者修炼“内功”。同时,译者在翻译的过程中加入了一些自己的见解,力求内容通俗易懂。如果你能掌握本书的全部内容,我相信你会具备非常扎实的 JS 基础,并在前端世界中畅游。

——熊能

JS 更新迭代比较快,很多人对于某些内容只停留在认识粗浅。英文原书的书名虽然是“for the Impatient”,但实际上,这也是一本很适合在现代浏览器上用作 Cookbook 的图书。

——苏州

TypeScript 在现代前端工程体系中有着举足轻重的地位,本书对于TypeScript 的介绍由浅入深,并从发展的角度探讨了如何设计和权衡 TS 接口。如果读者能够结合习题深入思考,相信一定能够对 TS 有更深刻的理解,并开发出代码精简、功能健全的代码库。

——姚丰

展开
目录

第 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

展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

温馨提示:请使用泸西县图书馆的读者帐号和密码进行登录

点击获取验证码
登录