JavaScript技術手冊

林信良

  • 出版商: 清華大學
  • 出版日期: 2020-08-01
  • 定價: $528
  • 售價: 8.5$449
  • 語言: 簡體中文
  • ISBN: 7302554404
  • ISBN-13: 9787302554400
  • 相關分類: JavaScript
  • 下單後立即進貨 (約4週~6週)

  • JavaScript技術手冊-preview-1
  • JavaScript技術手冊-preview-2
  • JavaScript技術手冊-preview-3
JavaScript技術手冊-preview-1

買這商品的人也買了...

商品描述

JavaScript是一種網絡腳本語言,被廣泛用於Web應用開發,常用來為網頁添加各式各樣的動態功能,為用戶提供更流暢美觀的瀏覽效果。JavaScript腳本通常是通過嵌入在HTML中來實現自身功能的。 《JavaScript技術手冊》內容涵蓋ES6到ES11,不僅介紹了JavaScript的基礎語法、對象、構造函數、原型與類等基本內容,還深入介紹了異步設計、錯誤處理、meta programming等高級內容。此外,還運用標準模塊語法將DOM操作、事件處理、樣式設定、XMLHttpRequest操作等細節,逐一封裝成為可用的模塊。 《JavaScript技術手冊》對於初學者來說,只要瞭解Windows基本操作,無須有任何程序語言基礎,便可以扎扎實實地學習JavaScript。對於有一定JavaScript開發經驗、正在或準備從事JavaScript 開發的人來說,通過《JavaScript技術手冊》的高級內容,能夠掌握JavaScript的技術精髓,進而應用於實踐工作中。

目錄大綱

目 錄

 

第1章 JavaScript技術概述  1

1.1 認識JavaScript  1

1.1.1 JavaScript的發展  1

1.1.2 認識TC39提案  4

1.1.3 使用哪個版本  5

1.2 準備JavaScript環境  7

1.2.1 JavaScript引擎  7

1.2.2 下載、安裝Node.js  8

1.3 重點復習  10

第2章 類型、變量與運算符  11

2.1 從Hello World 開始  11

2.1.1 使用REPL  11

2.1.2 撰寫JavaScript原始碼  14

2.1.3 哈啰!世界!  15

2.2 內建類型  18

2.2.1 基本類型  18

2.2.2 復合類型  23

2.2.3 數組與類數組  25

2.3 變量與運算符  29

2.3.1 變量  29

2.3.2 嚴格模式  33

2.3.3 加減乘除運算  35

2.3.4 比較運算  38

2.3.5 邏輯運算  40

2.3.6 位運算  41

2.3.7 條件、指定、遞增/遞減  43

2.4 重點復習  45

第3章 流程語法與函數  46

3.1 使用除錯器  46

3.1.1 使用Visual Studio Code  46

3.1.2 使用調試程序  48

3.2 流程語法  50

3.2.1 if分支判斷  50

3.2.2 變量與區塊  52

3.2.3 switch比對  53

3.2.4 for循環  55

3.2.5 while循環  58

3.2.6 break、continue  59

3.3 函數入門  61

3.3.1 聲明函數  61

3.3.2 參數與自變量  64

3.3.3 一級函數的運用  67

3.3.4 函數字面量與箭號函數  72

3.3.5 Closure  75

3.3.6 產生器函數  77

3.3.7 模板字符串與標記模板  81

3.4 重點復習  84

3.5 課後練習  84

第4章 使用對象  86

4.1 特性與方法  86

4.1.1 特性與undefined  86

4.1.2 函數與this  88

4.1.3 對象字面量增強  94

4.1.4 解構、餘集、打散  97

4.2 對象協議  101

4.2.1 valueOf()與toString()  101

4.2.2 符號  103

4.2.3 運用標準符號  104

4.3 重點復習  108

4.4 課後練習  108

第5章 構造函數、原型與類  110

5.1 構造函數  110

5.1.1 封裝對象建構流程  110

5.1.2 私有性模擬  114

5.1.3 特性描述器  116

5.1.4 擴充、彌封、凍結  120

5.2 原型對象  120

5.2.1 構造函數與prototype  121

5.2.2 __proto__與Object.create()  125

5.2.3 原型鏈  126

5.2.4 基於原型的繼承  128

5.2.5 重新定義方法  131

5.3 類語法  133

5.3.1 定義類  134

5.3.2 定義方法  135

5.3.3 實現繼承  138

5.3.4 super與extends  140

5.4 重點復習  143

5.5 課後練習  144

第6章 異步設計  145

6.1 初識異步  145

6.1.1 使用setTimeout()  145

6.1.2 同步  148

6.1.3 異步與回調  149

6.2 Promise  151

6.2.1 Promise實例  151

6.2.2 銜接Promise  153

6.2.3 Promise與產生器  155

6.3 async、await  156

6.3.1 async函數  156

6.3.2 await與Promise  158

6.3.3 for-await-of與異步

產生器函數  160

6.3.4 Symbol.asyncIterator  162

6.4 重點復習  165

6.5 課後練習  165

第7章 錯誤處理  166

7.1 錯誤處理語法  166

7.1.1 throw與try-catch  166

7.1.2 掌握錯誤類型  169

7.1.3 自定義錯誤類型  172

7.1.4 認識堆棧追蹤  174

7.1.5 產生器與錯誤處理  177

7.2 異步錯誤處理  179

7.2.1 回調模式錯誤處理  179

7.2.2 Promise與錯誤處理  181

7.2.3 async、await與錯誤處理  182

7.2.4 異步產生器與錯誤處理  183

7.3 重點復習  184

7.4 課後練習  184

第8章 常用標準API  186

8.1 數組  186

8.1.1 數組靜態方法  186

8.1.2 改變數組  189

8.1.3 函數式風格API  192

8.2 群集  196

8.2.1 Set與WeakSet  196

8.2.2 Map與WeakMap  198

8.2.3 ArrayBuffer  201

8.3 JSON  203

8.3.1 簡介JSON  203

8.3.2 JSON.stringify()與JSON.parse()  204

8.4 正則表達式  207

8.4.1 JavaSript與正則表達式  207

8.4.2 簡介正則表達式  207

8.4.3 String與正則表達式  213

8.4.4 使用RegExp  216

8.4.5 Unicode正則表達式  220

8.5 重點復習  224

8.6 課後練習  224

第9章 meta-programming  226

9.1 探索對象  226

9.1.1 對象特性  227

9.1.2 對象類型  230

9.1.3 對象相等性  234

9.2 Reflect與Proxy  235

9.2.1 Reflect API  235

9.2.2 Proxy API  240

9.3 重點復習  246

9.4 課後練習  246

第10章 進入瀏覽器  248

10.1 瀏覽器與JavaScript  248

10.1.1 初探script標簽  248

10.1.2 文件解析與script標簽  250

10.1.3 開發人員工具  253

10.1.4 引用.js原始碼  254

10.1.5 async與defer  257

10.1.6 初探安全  258

10.1.7 同源策略與CORS  261

10.2 從名稱空間到模塊  266

10.2.1 名稱空間管理  266

10.2.2 從CommonJS到AMD  271

10.3 ECMAScript模塊  273

10.3.1 script捲標與模塊  273

10.3.2 模塊語法入門  275

10.3.3 export與export default  278

10.4 重點復習  282

10.5 課後練習  282

第11章 DOM、事件與樣式  284

11.1 文件對象模型  284

11.1.1 瀏覽器對象模型  284

11.1.2 W3C文件對象模型  287

11.1.3 訪問HTML文件  289

11.1.4 捲標屬性與DOM特性  293

11.1.5 修改DOM樹  297

11.1.6 封裝DOM操作  300

11.2 事件處理  307

11.2.1 基本事件模型  308

11.2.2 標準事件模型  310

11.2.3 標準事件傳播  312

11.2.4 封裝事件處理  315

11.3 樣式處理  317

11.3.1 存取樣式信息  317

11.3.2 存取元素寬高  320

11.3.3 存取元素位置  322

11.3.4 顯示、可見度與透明度  327

11.3.5 操作class屬性  333

11.3.6 窗口維度相關信息  335

11.3.7 封裝樣式處理  338

11.4 重點復習  344

11.5 課後練習  344

第12章 網絡通信方案  345

12.1 XMLHttpRequest  345

12.1.1 初探XMLHttpRequest實例  345

12.1.2 使用GET請求  350

12.1.3 使用POST請求  354

12.1.4 上傳文件  357

12.1.5 responseXML、response  362

12.1.6 封裝XMLHttpRequest操作  366

12.2 Fetch、Server-Sent Events、WebSocket  371

12.2.1 Fetch API  372

12.2.2 Server-Sent Events  374

12.2.3 簡介WebSocket  377

12.3 重點復習  379

12.4 課後練習  379

第13章 瀏覽器保存方案  380

13.1 Cookie  380

13.1.1 認識Cookie  380

13.1.2 document.cookie  382

13.2 Web Storage  385

13.2.1 使用Storage  386

13.2.2 storage事件  388

13.3 Indexed Database  390

13.3.1 數據庫與對象庫  390

13.3.2 在交易中存取數據  393

13.3.3 封裝數據庫操作  395

13.4 重點復習  398

13.5 課後練習  398

附錄A HTTP簡介  399