图书介绍
ES6标准入门pdf电子书版本下载
- 阮一峰著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121276576
- 出版时间:2015
- 标注页数:319页
- 文件大小:27MB
- 文件页数:337页
- 主题词:程序设计
PDF下载
下载说明
ES6标准入门PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 ECMAScript 6简介 1
1.1 ECMAScript和JavaScript的关系 1
1.2 ECMAScript的历史 1
1.3 部署进度 2
1.4 Babel转码器 3
命令行环境 4
浏览器环境 5
Node.js环境 5
在线转换 6
1.5 Traceur转码器 6
直接插入网页 6
在线转换 7
命令行转换 8
Node.js环境的用法 8
1.6 ECMAScript 7 9
第2章 let和const命令 10
2.1 let命令 10
基本用法 10
不存在变量提升 11
暂时性死区 11
不允许重复声明 12
2.2 块级作用域 13
为什么需要块级作用域 13
ES6的块级作用域 13
2.3 const命令 15
2.4 跨模块常量 16
2.5 全局对象的属性 17
第3章 变量的解构赋值 18
3.1 数组的解构赋值 18
基本用法 18
默认值 20
3.2 对象的解构赋值 21
3.3 字符串的解构赋值 24
3.4 数值和布尔值的解构赋值 24
3.5 函数参数的解构赋值 24
3.6 圆括号问题 25
不能使用圆括号的情况 25
可以使用圆括号的情况 26
3.7 用途 26
第4章 字符串的扩展 29
4.1 字符的Unicode表示法 29
4.2 codePointAt() 30
4.3 String.fromCodePoint() 31
4.4 字符串的遍历器接口 31
4.5 at() 32
4.6 normalize() 32
4.7 includes(),startsWith(), endsWith() 33
4.8 repeat() 33
4.9 padStart(),padEnd() 34
4.10 模板字符串 34
4.11 实例:模板编译 37
4.12 标签模板 38
4.13 String.raw() 42
第5章 正则的扩展 43
5.1 RegExp构造函数 43
5.2 字符串的正则方法 43
5.3 u修饰符 43
5.4 y修饰符 45
5.5 sticky属性 47
5.6 flags属性 48
5.7 RegExp.escape() 48
第6章 数值的扩展 49
6.1 二进制和八进制数值表示法 49
6.2 Number.isFinite(),Number.isNaN() 49
6.3 Number.parseInt(),Number.parseFloat() 51
6.4 Number.isInteger() 51
6.5 Number.EPSILON 51
6.6 安全整数和Number.isSafeInteger() 52
6.7 Math对象的扩展 54
Math.trunc() 54
Math.sign() 54
Math.cbrt() 55
Math.clz32() 55
Math.imul() 56
Math.fround() 56
Math.hypot() 57
对数方法 57
三角函数方法 58
6.8 指数运算符 58
第7章 数组的扩展 59
7.1 Array.from() 59
7.2 Array.of() 61
7.3 数组实例的copyWithin() 62
7.4 数组实例的find()和findIndex() 63
7.5 数组实例的fill() 63
7.6 数组实例的entries()、keys()和values() 64
7.7 数组实例的includes() 64
7.8 数组的空位 65
7.9 数组推导 67
第8章 函数的扩展 69
8.1 函数参数的默认值 69
基本用法 69
与解构赋值默认值结合使用 70
参数默认值的位置 71
函数的length属性 72
作用域 73
应用 74
8.2 rest参数 74
8.3 扩展运算符 75
含义 75
替代数组的apply方法 76
扩展运算符的应用 77
8.4 name属性 79
8.5 箭头函数 80
基本用法 80
使用注意点 81
嵌套的箭头函数 83
8.6 函数绑定 84
8.7 尾调用优化 85
什么是尾调用 85
尾调用优化 86
尾递归 87
递归函数的改写 88
8.8 函数参数的尾逗号 89
第9章 对象的扩展 90
9.1 属性的简洁表示法 90
9.2 属性名表达式 92
9.3 方法的name属性 93
9.4 Object.is() 94
9.5 Object.assign() 95
9.6 属性的可枚举性 97
9.7 属性的遍历 98
9.8 __proto___属性, Object.setPrototypeOf(),Object.getPrototypeOf() 99
9.9 对象的扩展运算符 101
第10章 Symbol 103
10.1 概述 103
10.2 作为属性名的Symbol 105
10.3 实例:消除魔术字符串 106
10.4 属性名的遍历 107
10.5 Symbol.for(),Symbol.keyFor() 109
10.6 内置的Symbol值 110
Symbol.hasInstance 110
Symbol.isConcatSpreadable 110
Symbol.species 111
Symbol.match 111
Symbol.replace 112
Symbol.search 112
Symbol.split 112
Symbol.iterator 112
Symbol.toPrimitive 113
Symbol.toStringTag 113
Symbol.unscopables 114
第11章 Proxy和Reflect 116
11.1 Proxy概述 116
11.2 Proxy实例的方法 119
get() 119
set() 121
apply() 122
has() 123
construct() 123
deleteProperty() 124
defineProperty() 125
enumerate() 125
getOwnPropertyDescriptor() 126
getPrototypeOf() 126
isExtensible() 127
ownKeys() 127
preventExtensions() 128
setPrototypeOf() 128
11.3 Proxy.revocable() 129
11.4 Reflect概述 129
11.5 Reflect对象的方法 130
第12章 二进制数组 133
12.1 ArrayBuffer对象 134
概述 134
ArrayBuffer.prototype.byteLength 135
ArrayBuffer.prototype.slice() 135
ArrayBuffer.isView() 136
12.2 TypedArray视图 136
概述 136
构造函数 136
数组方法 138
字节序 140
BYTES_PER_ELEMENT属性 141
ArrayBuffer与字符串的互相转换 142
溢出 142
TypedArray.prototype.buffer 143
TypedArray.prototype.byteLength,TypedArray.prototype.byteOffset 143
TypedArray.prototype.length 143
TypedArray.prototype.set() 144
TypedArray.prototype.subarray() 144
TypedArray.prototype.slice() 144
TypedArray.of() 144
TypedArray.from() 145
12.3 复合视图 145
12.4 DataView视图 146
12.5 二进制数组的应用 148
AJAX 148
Canvas 148
WebSocket 149
Fetch API 149
FileAPI 149
第13章 Set和Map数据结构 151
13.1 Set 151
基本用法 151
Set实例的属性和方法 152
遍历操作 153
13.2 WeakSet 155
13.3 Map 157
Map结构的目的和基本用法 157
实例的属性和操作方法 159
遍历方法 160
与其他数据结构的互相转换 162
13.4 WeakMap 164
第14章 Iterator和for...of循环 166
14.1 Iterator的概念 166
14.2 数据结构的默认Iterator接口 168
14.3 调用Iterator接口的场合 172
14.4 字符串的Iterator接口 173
14.5 Iterator接口与Generator函数 174
14.6 遍历器对象的return()、throw() 175
14.7 for...of循环 175
数组 175
Set和Map结构 177
计算生成的数据结构 177
类似数组的对象 178
对象 179
与其他遍历语法的比较 180
第15章 Generator函数 181
15.1 简介 181
基本概念 181
yield语句 182
与Iterator接口的关系 184
15.2 next方法的参数 185
15.3 for...of循环 187
15.4 Generator.prototype.throw() 189
15.5 Generator.prototype.return() 193
15.6 yield*语句 194
15.7 作为对象属性的Generator函数 199
15.8 Generator函数的this 200
15.9 Generator函数推导 201
15.10 含义 202
Generator与状态机 202
Generator与协程 202
15.11 应用 203
第16章 Promise对象 208
16.1 Promise的含义 208
16.2 基本用法 208
16.3 Promise.prototype.then() 211
16.4 Promise.prototype.catch() 212
16.5 Promise.all() 215
16.6 Promise.race() 216
16.7 Promise.resolve() 216
16.8 Promise.reject() 217
16.9 两个有用的附加方法 218
done() 218
finally() 218
16.10 应用 219
加载图片 219
Generator函数与Promise的结合 219
16.11 async函数 220
第17章 异步操作和async函数 221
17.1 基本概念 221
异步 221
回调函数 221
Promise 222
17.2 Generator函数 223
协程 223
Generator函数的概念 223
Generator函数的数据交换和错误处理 224
异步任务的封装 224
17.3 Thunk函数 225
参数的求值策略 225
Thunk函数的含义 226
JavaScript语言的Thunk函数 226
Thunkify模块 227
Generator函数的流程管理 228
Thunk函数的自动流程管理 229
17.4 co模块 230
基本用法 230
co模块的原理 230
基于Promise对象的自动执行 231
co模块的源码 232
处理并发的异步操作 233
17.5 async函数 234
含义 234
async函数的实现 235
async函数的用法 236
注意点 236
与Promise、Generator的比较 238
第18章 Class 240
18.1 Class基本语法 240
概述 240
constructor方法 243
实例对象 243
name属性 244
Class表达式 245
不存在变量提升 245
严格模式 246
18.2 Class的继承 246
基本用法 246
类的prototype属性和__proto___属性 247
extends的继承目标 248
Object.getPrototypeOf() 249
super关键字 249
实例的___proto___属性 250
18.3 原生构造函数的继承 250
18.4 Class的取值函数(getter)和存值函数(setter) 253
18.5 Class的Generator方法 254
18.6 Class的静态方法 254
18.7 Class的静态属性 255
18.8 new.target属性 256
18.9 Mixin模式的实现 258
第19章 修饰器 259
19.1 类的修饰 259
19.2 方法的修饰 261
19.3 为什么修饰器不能用于函数 262
19.4 core-decorators.js 263
@autobind 263
@readonly 263
@override 263
@deprecate(别名@deprecated) 264
@suppressWarnings 265
19.5 使用修饰器实现自动发布事件 265
19.6 Mixin 266
19.7 Trait 267
19.8 Babel转码器的支持 269
第20章 Module 270
20.1 严格模式 271
20.2 export命令 271
20.3 import命令 272
20.4 模块的整体加载 273
20.5 module命令 274
20.6 export default命令 274
20.7 模块的继承 276
20.8 ES6模块加载的实质 277
20.9 循环加载 278
CommonJS模块的加载原理 279
CommonJS模块的循环加载 279
ES6模块的循环加载 280
20.10 ES6模块的转码 282
ES6 module transpiler 282
SystemJS 282
第21章 编程风格 284
21.1 块级作用域 284
let取代var 284
全局常量和线程安全 285
严格模式 285
21.2 字符串 285
21.3 解构赋值 285
21.4 对象 286
21.5 数组 288
21.6 函数 288
21.7 Map结构 289
21.8 Class 290
21.9 模块 291
21.10 ESLint的使用 292
第22章 读懂ECMAScript规格 293
22.1 概述 293
22.2 相等运算符 293
22.3 数组的空位 295
22.4 数组的map方法 296
第23章 参考链接 299
23.1 官方文件 299
23.2 综合介绍 299
23.3 let和const 302
23.4 解构赋值 302
23.5 字符串 303
23.6 正则 304
23.7 数值 304
23.8 数组 304
23.9 函数 305
23.10 对象 306
23.11 Proxy和Reflect 306
23.12 Symbol 308
23.13 二进制数组 308
23.14 Set和Map 309
23.15 Iterator 310
23.16 Generator 311
23.17 Promise对象 312
23.18 Class 314
23.19 Decorator 314
23.20 Module 315
23.21 工具 316