15天學會JavaScript(視頻教學版)

15天學會JavaScript(視頻教學版)

《15天學會JavaScript(視頻教學版)》是2018年10月清華大學出版社出版的圖書,作者是王金柱。

基本介紹

  • 書名:15天學會JavaScript(視頻教學版)
  • 作者:王金柱
  • ISBN:9787302511281
  • 定價:79元
  • 出版社:清華大學出版社
  • 出版時間:2018年10月
內容簡介,圖書目錄,

內容簡介

本書從技術和實際套用場景相結合的角度出發,結合當下熱門技術(JavaScript、ECMAScript 6、Ajax、Prototype.js、HTML 5、CSS 3等),用大量的、易懂的、最具代表性的代碼實例幫助讀者學習JavaScript技術開發。
本書共分為15章,從JavaScript的基礎知識到技術難點循序漸進地呈現給讀者,讓讀者有一個學習程式語言從易到難、由簡至繁的體驗過程。基礎部分包括JavaScript的發展歷史、語法基礎、表達式、函式等內容;提高部分主要介紹JavaScript對象、類、繼承等方面的知識難點;套用部分側重Web開發方向,包括DOM操作、事件處理、正則表達式、Ajax技術和JavaScript框架等主流技術。
本書是讀者學習掌握JavaScript技術非常好的工具,相信豐富的內容和大量的實例能夠為讀者學習和工作帶來啟發,是前端開發初學者不錯的選擇。

圖書目錄

第1章 JavaScript基礎 1
1.1 JavaScript概述 1
1.1.1 JavaScript腳本語言的概念 1
1.1.2 JavaScript發展歷史 2
1.1.3 JavaScript的組成 2
1.1.4 ECMAScript概述 3
1.1.5 JavaScript的特點 3
1.2 網頁中的JavaScript腳本語言 4
1.2.1 <script>標籤 4
1.2.2 嵌入式JavaScript腳本 4
1.2.3 引入外部JavaScript腳本檔案 5
1.3 JavaScript腳本運行機制 7
1.4 JavaScript腳本語言開發與調試 13
1.4.1 使用WebStrom集成開發平台創建項目、頁面檔案 14
1.4.2 使用WebStrom集成開發平台創建腳本檔案 15
1.4.3 使用FireFox瀏覽器運行HTML頁面和調試JS腳本 16
1.5 JavaScript腳本語言功能 18
1.5.1 在HTML網頁中輸出內容 18
1.5.2 改變HTML網頁中節點內容 18
1.5.3 改變HTML網頁中節點樣式 19
1.5.4 HTML網頁事件處理 19
1.5.5 HTML網頁表單驗證 19
1.6 本章小結 19
第2章 ECMAScript語法基礎 20
2.1 ECMAScript基礎 20
2.1.1 ECMAScript語句 20
2.1.2 區分大小寫 21
2.1.3 代碼換行 21
2.1.4 代碼中的空格 21
2.1.5 代碼注釋 21
2.2 ECMAScript變數 22
2.2.1 ECMAScript變數是弱類型的 22
2.2.2 變數的聲明 22
2.2.3 改變變數數據類型 23
2.2.4 變數命名習慣 25
2.2.5 未聲明的變數 25
2.2.6 嚴格模式(use strict) 26
2.3 ECMAScript類型 28
2.3.1 原始值與引用值 28
2.3.2 變數賦值機制 28
2.3.3 原始類型 29
2.3.4 Undefined原始類型 29
2.3.5 Null原始類型 32
2.3.6 Boolean原始類型 34
2.3.7 Number原始類型 36
2.3.8 特殊的Number類型值 40
2.3.9 String原始類型 45
2.3.10 獲取字元串長度 47
2.4 ECMAScript類型轉換 48
2.4.1 轉換成字元串 48
2.4.2 轉換成數字 51
2.4.3 強制類型轉換 54
2.5 ECMAScript 6新特新—let、const關鍵字 57
2.5.1 變數作用域 57
2.5.2 變數提升 59
2.5.3 塊級作用域 60
2.5.4 通過let關鍵字實現塊級作用域 61
2.5.5 let關鍵字使用規則 62
2.5.6 let關鍵字套用 63
2.5.7 通過const關鍵字定義常量 66
2.6 關鍵字和保留字 68
2.7 開發實戰:ECMAScript類型工具 69
2.8 本章小結 71
第3章 ECMAScript運算符與表達式 72
3.1 ECMAScript加性運算符及表達式 72
3.1.1 加性運算符與表達式概述 72
3.1.2 加法運算符及表達式 72
3.1.3 減法運算符及表達式 75
3.2 ECMAScript乘性運算符及表達式 77
3.2.1 乘性運算符與表達式概述 77
3.2.2 乘法運算符及表達式 77
3.2.3 除法運算符及表達式 79
3.2.4 取模運算符及表達式 80
3.3 ECMAScript一元運算符及表達式 82
3.3.1 一元運算符與表達式概述 82
3.3.2 new和delete運算符及表達式 82
3.3.3 void運算符及表達式 84
3.3.4 前增量與前減量運算符及表達式 85
3.3.5 後增量與後減量運算符及表達式 87
3.3.6 一元加法與一元減法運算符及表達式 88
3.4 ECMAScript關係運算符及表達式 90
3.4.1 關係運算符與表達式概述 91
3.4.2 數值關係運算符表達式 91
3.4.3 字元串關係運算符表達式 92
3.4.4 數字與字元串關係運算符表達式 93
3.5 ECMAScript等性運算符及表達式 95
3.5.1 等性運算符與表達式概述 95
3.5.2 等號與非等號運算符表達式 95
3.5.3 全等號與非全等號運算符表達式 97
3.6 ECMAScript位運算符及表達式 99
3.6.1 位運算符與表達式概述 100
3.6.2 整數編碼介紹 100
3.6.3 NOT運算符及表達式 102
3.6.4 AND運算符及表達式 103
3.6.5 OR運算符及表達式 104
3.6.6 XOR運算符及表達式 105
3.6.7 左移運算符及表達式 106
3.6.8 保留符號位的右移運算符及表達式 108
3.6.9 無符號位的右移運算符及表達式 109
3.7 ECMAScript邏輯運算符及表達式 111
3.7.1 邏輯運算符與表達式概述 111
3.7.2 ToBoolean邏輯值轉換操作 111
3.7.3 AND運算符及表達式 113
3.7.4 OR運算符及表達式 114
3.7.5 NOT運算符及表達式 116
3.8 ECMAScript賦值運算符及表達式 118
3.9 ECMAScript條件運算符及表達式 120
3.10 開發實戰:ECMAScript運算符工具 122
3.11 本章小結 124
第4章 ECMAScript流程控制語句 125
4.1 if條件語句 125
4.1.1 if語句 125
4.1.2 if…else…語句 126
4.1.3 if…else if…else…語句 128
4.2 switch條件語句 130
4.3 循環疊代語句 132
4.3.1 for語句 132
4.3.2 for…in…語句 134
4.3.3 while語句 136
4.3.4 do…while語句 137
4.4 循環中斷語句 138
4.4.1 break語句 138
4.4.2 continue語句 139
4.4.3 break語句與標籤語句配合使用 141
4.4.4 continue語句與標籤語句配合使用 142
4.5 ECMAScript 6新特新——for of疊代循環 144
4.5.1 疊代數組 144
4.5.2 疊代字元串 145
4.5.3 for of 循環疊代原理 146
4.6 開發實戰:ECMAScript運算符工具增強一 146
4.7 本章小結 152
第5章 ECMAScript函式 153
5.1 ECMAScript函式基礎 153
5.2 ECMAScript函式聲明、定義與調用 154
5.2.1 傳統方式聲明ECMAScript函式 154
5.2.2 使用函式表達式方式聲明定義ECMAScript函式 156
5.2.3 Function構造方式的ECMAScript函式 158
5.3 ECMAScript函式返回值 159
5.4 arguments對象 162
5.5 Function對象 165
5.5.1 Function對象實現函式指針 165
5.5.2 Function對象屬性 167
5.5.3 Function對象方法 168
5.6 JavaScript系統函式 169
5.6.1 常規函式 169
5.6.2 字元串函式 173
5.6.3 數學函式 175
5.6.4 數組函式 177
5.6.5 日期函式 180
5.7 ECMAScript 6新特新—不定參數和默認參數 181
5.7.1 可變參數的優缺點 181
5.7.2 不定參數的套用 183
5.7.3 默認參數的套用 184
5.8 開發實戰:ECMAScript運算符工具增強二 186
5.9 本章小結 190
第6章 ECMAScript對象 191
6.1 對象基礎 191
6.1.1 什麼是ECMAScript對象 191
6.1.2 ECMAScript對象構成 191
6.1.3 ECMAScript對象實例 191
6.2 對象套用 192
6.2.1 對象聲明與實例化 192
6.2.2 對象銷毀 194
6.2.3 對象綁定方式 197
6.3 ECMAScript對象類型 197
6.3.1 ECMAScript對象概述 197
6.3.2 Object對象 198
6.3.3 String對象 199
6.3.4 Array對象 200
6.3.5 Number對象 204
6.3.6 Boolean對象 205
6.3.7 Date對象 207
6.4 ECMAScript 6新特新——Symbol數據類型 211
6.4.1 定義Symbol對象 211
6.4.2 Symbol對象的唯一性 212
6.4.3 Symbol定義屬性名 213
6.5 ECMAScript 6新特新 —— Set數據類型 214
6.5.1 定義和遍歷Set數據類型 214
6.5.2 判斷Set集合中的值 215
6.5.3 刪除和清空Set集合 216
6.6 ECMAScript 6新特新 —— Map數據類型 218
6.6.1 定義Map數據類型和基本存取操作 218
6.6.2 判斷Map集合中的值 219
6.6.3 刪除和清空Map集合 220
6.7 開發實戰:線上JavaScript時鐘 221
6.8 本章小結 230
第7章 ECMAScript 正則表達式 231
7.1 正則表達式基礎 231
7.1.1 什麼是正則表達式 231
7.1.2 RegExp對象語法 231
7.1.3 RegExp對象模式 232
7.2 RegExp對象方法 235
7.2.1 test方法 235
7.2.2 exec方法 236
7.2.3 compile方法 238
7.3 RegExp對象修飾符標記 239
7.3.1 “g”修飾符標記 239
7.3.2 “i”修飾符標記 240
7.3.3 “g”和“i”修飾符標記組合 241
7.4 RegExp對象屬性 242
7.4.1 global屬性 242
7.4.2 ignoreCase屬性 243
7.4.3 lastIndex屬性 244
7.4.4 source屬性 247
7.5 RegExp對象模式 248
7.5.1 方括弧 249
7.5.2 元字元 250
7.5.3 量詞 256
7.5.4 分組 261
7.5.5 分枝 264
7.6 開發實戰:文本域驗證頁面 266
7.7 本章小結 272
第8章 ECMAScript面向對象編程 273
8.1 面向對象基礎 273
8.1.1 什麼是“面向對象” 273
8.1.2 面向對象的特點 274
8.1.3 面向對象的專業術語 274
8.2 ECMAScript對象作用域 274
8.2.1 對象作用域 275
8.2.2 this關鍵字 275
8.3 創建ECMAScript類與對象 276
8.3.1 工廠方式(Factory)創建類與對象 277
8.3.2 封裝的工廠方式(Factory)創建類與對象 278
8.3.3 帶參數的工廠方式(Factory)創建類與對象 279
8.3.4 工廠方式(Factory)的最大局限 280
8.3.5 構造函式方式創建類與對象 282
8.3.6 原型方式創建類與對象 283
8.3.7 結合構造函式方式與原型方式創建類與對象 285
8.4 原型Prototype套用 286
8.4.1 定義新方法 286
8.4.2 重定義已有方法 287
8.4.3 實現繼承機制 288
8.5 ECMAScript 6 面向對象新特性 291
8.5.1 通過“class”定義類 291
8.5.2 通過“extends”繼承類 293
8.5.3 類的setter和getter方法 295
8.6 本章小結 296
第9章 JavaScript與瀏覽器對象模型(BOM) 297
9.1 瀏覽器對象模型(BOM)編程基礎 297
9.2 Window對象 298
9.2.1 Window對象基礎 298
9.2.2 瀏覽器視窗尺寸屬性 299
9.2.3 瀏覽器視窗坐標 301
9.2.4 self與top屬性 302
9.2.5 open()與close()方法 303
9.2.6 同時打開和關閉多個視窗 306
9.2.7 移動瀏覽器視窗 308
9.2.8 調整瀏覽器視窗尺寸大小 312
9.3 Window訊息框 315
9.3.1 警告框(alert) 315
9.3.2 確認框(confirm) 317
9.3.3 提示框(prompt) 319
9.4 Screen對象 321
9.5 Location對象 322
9.5.1 Location對象基礎 322
9.5.2 Location對象屬性 323
9.5.3 assign方法 324
9.5.4 reload方法 326
9.5.5 replace方法 328
9.6 History對象 330
9.7 Navigator對象 335
9.8 JavaScript計時器 336
9.8.1 計時器基礎 336
9.8.2 setTimeout計時器 337
9.8.3 setInterval計時器 341
9.9 開發實戰:搖號抽獎Web套用 343
9.10 本章小結 351
第10章 JavaScript與文檔對象模型(DOM) 352
10.1 文檔對象模型(DOM)編程基礎 352
10.1.1 文檔對象模型(DOM)介紹 352
10.1.2 DOM模型中獲得對象的方法 353
10.1.3 HTML DOM編程基礎 355
10.2 JavaScript獲取DOM對象 357
10.2.1 通過id獲取DOM元素對象 357
10.2.2 通過name獲取DOM元素對象 359
10.2.3 通過tag標籤獲取DOM元素對象 361
10.2.4 通過class獲取DOM元素對象 364
10.2.5 通過父節點、子節點獲取DOM元素對象 366
10.3 JavaScript動態操作DOM對象 368
10.3.1 動態操作DOM元素對象 368
10.3.2 動態操作DOM元素屬性 372
10.3.3 動態操作DOM元素樣式 376
10.4 開發實戰:風格頁面切換 380
10.5 本章小結 385
第11章 JavaScript與表單對象 386
11.1 表單(Form)對象模型基礎 386
11.2 操作表單(Form)對象屬性 387
11.3 獲取表單(Form)元素內容 388
11.4 使用表單(Form)對象方法 390
11.5 開發實戰:用戶信息表單 393
11.6 本章小結 399
第12章 JavaScript事件編程 400
12.1 HTML事件基礎 400
12.1.1 HTML事件 400
12.1.2 HTML事件類型 401
12.1.3 HTML DOM事件流 402
12.2 JavaScript與視窗事件 403
12.2.1 視窗(Window)載入事件 403
12.2.2 視窗(Window)載入多個事件 404
12.2.3 視窗(Window)載入事件(JS方式) 404
12.3 JavaScript與表單事件 405
12.3.1 表單(Form)元素變化事件 405
12.3.2 表單(Form)元素被選中事件 408
12.3.3 表單(Form)元素焦點事件 410
12.3.4 表單(Form)重置與提交事件 412
12.4 JavaScript與鍵盤事件 415
12.4.1 鍵盤按鍵按下事件 415
12.4.2 鍵盤按鍵釋放事件 417
12.4.3 鍵盤按鍵按下並釋放事件 419
12.5 JavaScript與滑鼠事件 421
12.5.1 滑鼠單擊事件 421
12.5.2 滑鼠雙擊事件 422
12.5.3 滑鼠懸停與移出事件 425
12.5.4 獲取滑鼠坐標位置 427
12.6 開發實戰:滑鼠點擊獲取標籤 429
12.7 本章小結 433
第13章 Ajax技術 434
13.1 Ajax基礎 434
13.1.1 Ajax是什麼 434
13.1.2 Ajax工作原理 435
13.1.3 Ajax工作方式 435
13.2 XMLHttpRequest對象 439
13.2.1 創建XMLHttpRequest對象 439
13.2.2 傳送XMLHttpRequest請求 440
13.2.3 完成XMLHttpRequest回響 441
13.2.4 Ajax事件處理 441
13.3 Ajax套用實例 442
13.3.1 Ajax方式讀取XML檔案 442
13.3.2 Ajax方式解析XML檔案 445
13.3.3 GET請求方式 449
13.3.4 POST請求方式 453
13.4 本章小結 457
第14章 JavaScript框架介紹 458
14.1 Prototype.js框架 458
14.1.1 Prototype.js框架基礎 458
14.1.2 通過“$()”方法操作DOM 459
14.1.3 通過“$F()”方法操作表單 462
14.1.4 String對象擴展方法 465
14.1.5 Event事件擴展 467
14.2 jQuery框架 469
14.2.1 jQuery框架基礎 469
14.2.2 選擇器“$()”套用一 470
14.2.3 選擇器“$()”套用二 475
14.2.4 選擇器“$()”套用三 479
14.2.5 jQuery事件處理 483
14.3 本章小結 485
第15章 實戰開發:Ajax異步登錄 486
15.1 項目架構 486
15.2 HTML前端代碼 486
15.3 異步登錄的JavaScript腳本代碼 488
15.4 伺服器端代碼 491

相關詞條

熱門詞條

聯絡我們