内容简介
作者简介
作者:[美]凯尔?辛普森Kyle Simpson 译者:单业
Kyle Simpson,推崇开放的互联网,对JavaScript、HTML5、实时/端对端通信和Web性能有深入研究。他是技术书作家、技术培训师、讲师和开源社区的活跃成员。
本书目录
前言 xi致谢 xvii
第 一部分 起步上路
序 2
第 1 章 深入编程 4
1.1 代码 4
1.2 表达式 5
1.3 实践 6
输出 7
输入 8
1.4 运算符 9
1.5 值与类型 11
1.6 代码注释 13
1.7 变量 14
1.8 块 16
1.9 条件判断 17
1.10 循环 18
1.11 函数 20
1.12 实践 23
1.13 小结 25
第 2 章 深入JavaScript 26
2.1 值与类型 26
对象 28
内置类型方法 30
值的比较 31
2.2 变量 35
2.3 条件判断 37
2.4 严格模式 39
2.5 作为值的函数 40
立即调用函数表达式 41
闭包 42
2.6 this标识符 44
2.7 原型 46
2.8 旧与新 47
polyfilling 47
transpiling 48
2.9 非JavaScript 49
2.10 小结 50
第 3 章 深入“你不知道的JavaScript”系列 51
3.1 作用域和闭包 51
3.2 this和对象原型 52
3.3 类型和语法 53
3.4 异步和性能 53
3.5 ES6及更新版本 54
3.6 小结 55
第 二部分 ES6及更新版本
序 58
第 1 章 ES?现在与未来 59
1.1 版本 60
1.2 transpiling 61
1.3 小结 63
第 2 章 语法 64
2.1 块作用域声明 64
let声明 65
const声明 68
块作用域函数 70
2.2 spread/rest 71
2.3 默认参数值 73
2.4 解构 77
对象属性复制模式 78
不只是声明 79
重复赋值 81
2.5 太多,太少,刚刚好 83
默认值赋值 84
嵌套解构 84
解构参数 85
2.6 对象字面量扩展 90
简洁属性 90
简洁方法 90
计算属性名 95
设定[[Prototype]] 96
super对象 97
2.7 模板字面量 98
插入表达式 99
标签模板字面量 100
2.8 箭头函数 103
2.9 for..of循环 109
2.10 正则表达式 111
Unicode标识 111
定点标识 112
正则表达式flags 116
2.11 数字字面量扩展 117
2.12 Unicode 118
支持Unicode的字符串运算 119
字符定位 121
Unicode标识符名 123
2.13 符号 123
符号注册 125
作为对象属性的符号 127
2.14 小结 128
第 3 章 代码组织 129
3.1 迭代器 129
接口 130
next迭代 131
可选的return..和throw.. 132
迭代器循环 133
自定义迭代器 134
迭代器消耗 137
3.2 生成器 138
语法 139
迭代器控制 144
提前完成 147
错误处理 149
Transpile生成器 151
生成器使用 152
3.3 模块 153
旧方法 153
前进 154
新方法 156
模块依赖环 164
模块加载 166
3.4 类 167
class 168
extends和super 169
new.target 174
static 175
3.5 小结 176
第 4 章 异步流控制 177
4.1 Promise 177
构造和使用Promise 178
Thenable 180
Promise API 181
4.2 生成器 + Promise 183
4.3 小结 185
第 5 章 集合 187
5.1 TypedArray 187
大小端Endianness 188
多视图 189
带类数组构造器 190
5.2 Map 192
Map值 194
Map键 194
5.3 WeakMap 195
5.4 Set 196
5.5 WeakSet 198
5.6 小结 199
第 6 章 新增API 200
6.1 Array 200
静态函数Array.of.. 200
静态函数Array.from.. 201
创建数组和子类型 204
原型方法copyWithin.. 205
原型方法fill.. 206
原型方法find.. 206
原型方法findIndex.. 207
原型方法entries、values、keys 208
6.2 Object 209
静态函数Object.is.. 209
静态函数Object.getOwnPropertySymbols.. 210
静态函数Object.setPrototypeOf.. 210
静态函数Object.assign.. 211
6.3 Math 212
6.4 Number 214
静态属性 214
静态函数Number.isNaN.. 214
静态函数Number.isFinite.. 215
整型相关静态函数 215
6.5 字符串 216
Unicode函数 217
静态函数String.raw.. 217
原型函数repeat.. 217
字符串检查函数 218
6.6 小结 218
第 7 章 元编程 219
7.1 函数名称 219
7.2 元属性 222
7.3 公开符号 223
Symbol.iterator 223
224
Symbol.species 225
Symbol.toPrimitive 226
正则表达式符号 226
Symbol.isConcatSpreadable 227
Symbol.unscopables 228
7.4 代理 228
代理局限性 231
可取消代理 232
使用代理 233
7.5 Reflect API 240
7.6 特性测试 243
7.7 尾递归调用Tail Call Optimization,TCO 245
尾调用重写 247
非TCO优化 248
元在何处 250
7.8 小结 251
第 8 章 ES6之后 253
8.1 异步函数 254
8.2 Object.observe.. 257
自定义改变事件 258
结束观测 259
8.3 幂运算符 260
8.4 对象属性与... 260
8.5 Arrayincludes 261
8.6 SIMD 262
8.7 WebAssembly WASM 262
8.8 小结 264
· · · · · ·


