包郵 ES6標準入門(第3版)ECMAScript6入門書籍 計算機編程設計

包郵 ES6標準入門(第3版)ECMAScript6入門書籍 計算機編程設計 pdf epub mobi txt 电子书 下载 2025

想要找书就要到 求知書站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
店铺: 旷氏文豪图书专营店
出版社: 电子工业出版社
ISBN:9787121324758
商品编码:15895714026
开本:16开
出版时间:2017-09-01
页数:576

具体描述

ES6是下一代語言標準的統稱,每年6月發布一次修訂版,迄今為止已經發布瞭3個版本,分彆是ES2015、ES2016、ES2017。本書根據ES2017標準,詳盡介紹瞭所有新增的語法,對基本概念、設計目的和用法進行瞭清晰的講解,給齣瞭大量簡單易懂的示例。本書為中級難度,適閤那些已經對語言有一定瞭解的讀者,可以作為學習這門語言*新進展的工具書,也可以作為參考手冊供大傢隨時查閱新語法。第3版增加瞭**過30%的內容,完全覆蓋瞭ES2017標準,相比第2版介紹瞭更多的語法點,還調整瞭原有章節的文字錶達,充實瞭示例,論述更準確,更易懂易學。

目錄

第1章  ECMAScript 6簡介1

1.1  ECMAScript和的關係1

1.2  ES6與ECMAScript 2015的關係1

1.3  語法提案的批準流程2

1.4  ECMAScript的曆史3

1.5  部署進度4

1.6  Babel 轉碼器4

1.6.1  配置文件.babelrc5

1.6.2  命令行轉碼babel-cli6

1.6.3  babel-node7

1.6.4  babel-register8

1.6.5  babel-core8

1.6.6  babel-polyfill9

1.6.7  瀏覽器環境10

1.6.8  在綫轉換10

1.6.9  與其他工具的配閤11

1.7  Traceur轉碼器11

1.7.1  直接插入網頁12

1.7.2  在綫轉換13

1.7.3  命令行轉換14

1.7.4  Node環境的用法15

第2章  let和const命令17

2.1  let 命令17

2.1.1  基本用法17

2.1.2  不存在變量提升19

2.1.3  暫時性死區19

2.1.4  不允許重復聲明21

2.2  塊級作用域22

2.2.1  為什麼需要塊級作用域22

2.2.2  ES6的塊級作用域23

2.2.3  塊級作用域與函數聲明24

2.2.4  do錶達式27

2.3  const命令28

2.3.1  基本用法28

2.3.2  本質29

2.3.3  ES6聲明變量的6種方法30

2.4  頂層對象的屬性30

2.5  global對象31

第3章  變量的解構賦值33

3.1  數組的解構賦值33

3.1.1  基本用法33

3.1.2  默認值35

3.2  對象的解構賦值37

3.3  字符串的解構賦值41

3.4  數值和布爾值的解構賦值41

3.5  函數參數的解構賦值42

3.6  圓括號問題43

3.6.1  不能使用圓括號的情況43

3.6.2  可以使用圓括號的情況44

3.7  用途44

第4章  字符串的擴展49

4.1  字符的Unicode錶示法49

4.2  codePointAt()50

4.3  String.fromCodePoint()52

4.4  字符串的遍曆器接口52

4.5  at()53

4.6  normalize()53

4.7  includes()、startsWith()、endsWith()54

4.8  repeat()55

4.9  padStart()、padEnd()56

4.10  模闆字符串57

4.11  實例:模闆編譯60

4.12  標簽模闆62

4.13  String.raw()67

4.14  模闆字符串的限製68

第5章  正則的擴展71

5.1  RegExp構造函數71

5.2  字符串的正則方法72

5.3  u修飾符72

5.4  y修飾符74

5.5  sticky屬性77

5.6  flags屬性77

5.7  s修飾符:dotAll模式78

5.8  後行斷言79

5.9  Unicode屬性類80

5.10  具名組匹配81

5.10.1  簡介81

5.10.2  解構賦值和替換82

5.10.3  引用83

第6章  數值的擴展85

6.1  二進製和八進製錶示法85

6.2  Number.isFinite()、Number.isNaN()86

6.3  Number.parseInt()、Number.parseFloat()87

6.4  Number.isInteger()88

6.5  Number.EPSILON88

6.6  安全整數和Number.isSafeInteger()89

6.7  Math對象的擴展92

6.7.1  Math.trunc()92

6.7.2  Math.sign()92

6.7.3  Math.cbrt()93

6.7.4  Math.clz32()94

6.7.5  Math.imul()95

6.7.6  Math.fround()95

6.7.7  Math.hypot()96

6.7.8  對數方法96

6.7.9  雙麯函數方法98

6.8  Math.signbit()98

6.9  指數運算符99

6.10  Integer數據類型99

6.10.1  簡介99

6.10.2  運算100

第7章  函數的擴展103

7.1  函數參數的默認值103

7.1.1  基本用法103

7.1.2  與解構賦值默認值結閤使用105

7.1.3  參數默認值的位置107

7.1.4  函數的length屬性108

7.1.5  作用域108

7.1.6  應用111

7.2  rest參數112

7.3  嚴格模式113

7.4  name屬性115

7.5  箭頭函數116

7.5.1  基本用法116

7.5.2  注意事項118

7.5.3  嵌套的箭頭函數121

7.6  綁定this123

7.7  尾調用優化124

7.7.1  什麼是尾調用124

7.7.2  尾調用優化125

7.7.3  尾遞歸126

7.7.4  遞歸函數的改寫128

7.7.5  嚴格模式129

7.7.6  尾遞歸優化的實現129

7.8  函數參數的尾逗號132

第8章  數組的擴展133

8.1  擴展運算符133

8.1.1  含義133

8.1.2  替代數組的apply方法134

8.1.3  擴展運算符的應用136

8.2  Array.from()139

8.3  Array.of()142

8.4  數組實例的copyWithin()143

8.5  數組實例的find()和findIndex()144

8.6  數組實例的fill()145

8.7  數組實例的entries()、keys()和values()145

8.8  數組實例的includes()146

8.9  數組的空位147

第9章  對象的擴展151

9.1  屬性的簡潔錶示法151

9.2  屬性名錶達式154

9.3  方法的name屬性156

9.4  Object.is()157

9.5  Object.assign()158

9.5.1  基本用法158

9.5.2  注意點160

9.5.3  常見用途161

9.6  屬性的可枚舉性163

9.7  屬性的遍曆165

9.8  __proto__ 屬性、Object.setPrototypeOf()、Object.getPrototypeOf()166

9.8.1  __proto__ 屬性166

9.8.2  Object.setPrototypeOf()167

9.8.3  Object.getPrototypeOf()168

9.9  Object.keys()、Object.values()、Object.entries()169

9.9.1  Object.keys()169

9.9.2  Object.values()170

9.9.3  Object.entries171

9.10  對象的擴展運算符173

9.11  Object.getOwnPropertyDescriptors()177

9.12  Null傳導運算符181

第10章  Symbol183

10.1  概述183

10.2  作為屬性名的Symbol185

10.3  實例:消除魔術字符串188

10.4  屬性名的遍曆189

10.5  Symbol.for()、Symbol.keyFor()191

10.6  實例:模塊的Singleton模式192

10.7  內置的Symbol值194

10.7.1  Symbol.hasInstance194

10.7.2  Symbol.isConcatSpreadable195

10.7.3  Symbol.species196

10.7.4  Symbol.match197

10.7.5  Symbol.replace197

10.7.6  Symbol.search198

10.7.7  Symbol.split198

10.7.8  Symbol.iterator199

10.7.9  Symbol.toPrimitive200

10.7.10  Symbol.toStringTag201

10.7.11  Symbol.unscopables202

第11章  Set和Map數據結構205

11.1  Set205

11.1.1  基本用法205

11.1.2  Set實例的屬性和方法207

11.1.3  遍曆操作208

11.2  WeakSet212

11.2.1  含義212

11.2.2  語法212

11.3  Map214

11.3.1  含義和基本用法214

11.3.2  實例的屬性和操作方法218

11.3.3  遍曆方法220

11.3.4  與其他數據結構的互相轉換222

11.4  WeakMap225

11.4.1  含義225

11.4.2  WeakMap的語法227

11.4.3  WeakMap示例228

11.4.4  WeakMap的用途229

第12章  Proxy233

12.1  概述233

12.2  Proxy實例的方法237

12.2.1  get()237

12.2.2  set()241

12.2.3  apply()243

12.2.4  has()244

12.2.5  construct()246

12.2.6  deleteProperty()247

12.2.7  defineProperty()248

12.2.8  getOwnPropertyDescriptor()248

12.2.9  getPrototypeOf()249

12.2.10  isExtensible()249

12.2.11  ownKeys()250

12.2.12  preventExtensions()254

12.2.13  setPrototypeOf()255

12.3  Proxy.revocable()255

12.4  this問題256

12.5  實例:Web服務的客戶端258

第13章  Reflect259

13.1  概述259

13.2  靜態方法261

13.2.1  Reflect.get(target, name, receiver)262

13.2.2  Reflect.set(target, name, value, receiver)263

13.2.3  Reflect.has(obj, name)264

13.2.4  Reflect.deleteProperty(obj, name)265

13.2.5  Reflect.construct(target, args)265

13.2.6  Reflect.getPrototypeOf(obj)265

13.2.7  Reflect.setPrototypeOf(obj, newProto)266

13.2.8  Reflect.apply(func, thisArg, args)267

13.2.9  Reflect.defineProperty(target, propertyKey, attributes)267

13.2.10  Reflect.getOwnPropertyDescriptor (target, propertyKey)268

13.2.11  Reflect.isExtensible (target)268

13.2.12  Reflect.preventExtensions(target)269

13.2.13  Reflect.ownKeys (target)269

13.3  實例:使用Proxy實現觀察者模式270

第14章  Promise對象273

14.1  Promise的含義273

14.2  基本用法274

14.3  Promise.prototype.then()278

14.4  Promise.prototype.catch()279

14.5  Promise.all()285

14.6  Promise.race()287

14.7  Promise.resolve()288

14.8  Promise.reject()290

14.9  兩個有用的附加方法291

14.9.1  done()291

14.9.2  finally()292

14.10  應用292

14.10.1  加載圖片292

14.10.2  Generator函數與Promise的結閤293

14.11  Promise.try()294

第15章  Iterator和for...of循環297

15.1  Iterator(遍曆器)的概念297

15.2  默認Iterator接口300

15.3  調用Iterator接口的場閤305

15.4  字符串的Iterator接口307

15.5  Iterator接口與Generator函數308

15.6  遍曆器對象的return()、throw()309

15.7  for...of循環310

15.7.1  數組310

15.7.2  Set和Map結構311

15.7.3  計算生成的數據結構312

15.7.4  類似數組的對象313

15.7.5  對象314

15.7.6  與其他遍曆語法的比較315

第16章  Generator函數的語法317

16.1  簡介317

16.1.1  基本概念317

16.1.2  yield錶達式319

16.1.3  與Iterator接口的關係322

16.2  next方法的參數323

16.3  for...of循環325

16.4  Generator.prototype.throw()328

16.5  Generator.prototype.return()334

16.6  yield*錶達式335

16.7  作為對象屬性的Generator函數342

16.8  Generator函數this342

16.9  含義345

16.9.1  Generator與狀態機345

16.9.2  Generator與協程346

16.10  應用347

16.10.1  異步操作的同步化錶達347

16.10.2  控製流管理348

16.10.3  部署Iterator接口351

16.10.4  作為數據結構352

第17章  Generator函數的異步應用355

17.1  傳統方法355

17.2  基本概念355

17.2.1  異步355

17.2.2  迴調函數356

17.2.3  Promise356

17.3  Generator函數357

17.3.1  協程357

17.3.2  協程的Generator函數實現358

17.3.3  Generator函數的數據交換和錯誤處理359

17.3.4  異步任務的封裝360

17.4  Thunk函數361

17.4.1  參數的求值策略361

17.4.2  Thunk函數的含義362

17.4.3  語言的Thunk函數362

17.4.4  Thunkify模塊364

17.4.5  Generator函數的流程管理365

17.4.6  Thunk函數的自動流程管理367

17.5  co模塊368

17.5.1  基本用法368

17.5.2  co模塊的原理369

17.5.3  基於Promise對象的自動執行369

17.5.4  co模塊的源碼371

17.5.5  處理並發的異步操作372

17.6  實例:處理 Stream373

第18章  async函數375

18.1  含義375

18.2  用法377

18.3  語法379

18.3.1  返迴Promise對象379

18.3.2  Promise對象的狀態變化379

18.3.3  await命令380

18.3.4  錯誤處理382

18.3.5  使用注意點383

18.4  async函數的實現原理386

18.5  其他異步處理方法的比較387

18.6  實例:按順序完成異步操作388

18.7  異步遍曆器390

18.7.1  異步遍曆的接口390

18.7.2  for await...of392

18.7.3  異步Generator函數393

18.7.4  yield*語句398


第19章  Class的基本語法399

19.1  簡介399

19.2  嚴格模式403

19.3  constructor方法403

19.4  類的實例對象404

19.5  Class錶達式406

19.6  不存在變量提升407

19.7  私有方法408

19.8  私有屬性409

19.9  this的指嚮410

19.10  name屬性412

19.11  Class的取值函數(getter)和存值函數(setter)412

19.12  Class的Generator方法413

19.13  Class的靜態方法414

19.14  Class的靜態屬性和實例屬性415

19.14.1  Class的實例屬性416

19.14.2  Class的靜態屬性417

19.15  new.target屬性418

第20章  Class的繼承421

20.1  簡介421

20.2  Object.getPrototypeOf()423

20.3  super關鍵字423

20.4  類的prototype屬性和 __proto__ 屬性429

20.4.1  extends的繼承目標430

20.4.2  實例的 __proto__ 屬性432

20.5  原生構造函數的繼承432

20.6  Mixin模式的實現436

第21章  修飾器439

21.1  類的修飾439

21.2  方法的修飾442

21.3  為什麼修飾器不能用於函數444

21.4  core-decorators.js446

21.5  使用修飾器實現自動發布事件449

21.6  Mixin450

21.7  Trait453

21.8  Babel轉碼器的支持456

第22章  Module的語法457

22.1  概述457

22.2  嚴格模式458

22.3  export命令459

22.4  import命令462

22.5  模塊的整體加載464

22.6  export default命令465

22.7  export與import的復閤寫法468

22.8  模塊的繼承469

22.9  跨模塊常量470

22.10  import()471

22.10.1  簡介471

22.10.2  適用場閤472

22.10.3  注意點473

第23章  Module的加載實現475

23.1  瀏覽器加載475

23.1.1  傳統方法475

23.1.2  加載規則476

23.2  ES6模塊與CommonJS模塊的差異477

23.3  Node加載481

23.3.1  概述481

23.3.2  import命令加載CommonJS模塊482

23.3.3  require命令加載ES6模塊484

23.4  循環加載485

23.4.1  CommonJS模塊的加載原理485

23.4.2  CommonJS模塊的循環加載486

23.4.3  ES6模塊的循環加載488

23.5  ES6模塊的轉碼492

23.5.1  ES6 module transpiler492

23.5.2  SystemJS492

第24章  編程風格495

24.1  塊級作用域495

24.1.1  let取代var495

24.1.2  全局常量和綫程安全496

24.2  字符串497

24.3  解構賦值497

24.4  對象498

24.5  數組500

24.6  函數501

24.7  Map結構503

24.8  Class503

24.9  模塊504

24.10  ESLint的使用506

第25章  讀懂ECMAScript規格509

25.1  概述509

25.2  相等運算符510

25.3  數組的空位511

25.4  數組的map方法513

.......


用户评价

评分

非常好的书,看了很多遍

评分

书是没什么问题 ,就是送货慢 送了半个多月

评分

非常好的书,看了很多遍

评分

非常好的书,看了很多遍

评分

书挺好的

评分

书挺好的

评分

不错!刚收到!

评分

不错!刚收到!

评分

书挺好的

相关图书

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有