图书介绍

ES6标准入门2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

ES6标准入门
  • 阮一峰著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121276576
  • 出版时间:2015
  • 标注页数:319页
  • 文件大小:27MB
  • 文件页数:337页
  • 主题词:程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

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 79

第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.EPSILON51

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章 Symbol103

10.1 概述103

10.2 作为属性名的Symbol105

10.3 实例:消除魔术字符串106

10.4 属性名的遍历107

10.5 Symbol.for(),Symbol.keyFor()109

10.6 内置的Symbol值110

Symbol.hasInstance110

Symbol.isConcatSpreadable110

Symbol.species111

Symbol.match111

Symbol.replace112

Symbol.search112

Symbol.split112

Symbol.iterator112

Symbol.toPrimitive113

Symbol.toStringTag113

Symbol.unscopables114

第11章 Proxy和Reflect116

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.byteLength135

ArrayBuffer.prototype.slice()135

ArrayBuffer.isView()136

12.2 TypedArray视图136

概述136

构造函数136

数组方法138

字节序140

BYTES_PER_ELEMENT属性141

ArrayBuffer与字符串的互相转换142

溢出142

TypedArray.prototype.buffer143

TypedArray.prototype.byteLength,TypedArray.prototype.byteOffset143

TypedArray.prototype.length143

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

AJAX148

Canvas148

WebSocket149

Fetch API149

FileAPI149

第13章 Set和Map数据结构151

13.1 Set151

基本用法151

Set实例的属性和方法152

遍历操作153

13.2 WeakSet155

13.3 Map157

Map结构的目的和基本用法157

实例的属性和操作方法159

遍历方法160

与其他数据结构的互相转换162

13.4 WeakMap164

第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函数的this200

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

Promise222

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章 Class240

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.js263

@autobind263

@readonly263

@override263

@deprecate(别名@deprecated)264

@suppressWarnings265

19.5 使用修饰器实现自动发布事件265

19.6 Mixin266

19.7 Trait267

19.8 Babel转码器的支持269

第20章 Module270

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 transpiler282

SystemJS282

第21章 编程风格284

21.1 块级作用域284

let取代var284

全局常量和线程安全285

严格模式285

21.2 字符串285

21.3 解构赋值285

21.4 对象286

21.5 数组288

21.6 函数288

21.7 Map结构289

21.8 Class290

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和const302

23.4 解构赋值302

23.5 字符串303

23.6 正则304

23.7 数值304

23.8 数组304

23.9 函数305

23.10 对象306

23.11 Proxy和Reflect306

23.12 Symbol308

23.13 二进制数组308

23.14 Set和Map309

23.15 Iterator310

23.16 Generator311

23.17 Promise对象312

23.18 Class314

23.19 Decorator314

23.20 Module315

23.21 工具316

热门推荐