JavaScript網頁編程從入門到精通 JavaScript网页编程从入门到精通(附DVD光盘)

楊凡

  • 出版商: 清華大學
  • 出版日期: 2017-10-01
  • 定價: $708
  • 售價: 8.5$602
  • 語言: 簡體中文
  • 頁數: 956
  • 裝訂: 平裝
  • ISBN: 7302421927
  • ISBN-13: 9787302421924
  • 相關分類: JavaScript
  • 下單後立即進貨 (約4週~6週)

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

商品描述

《JavaScript網頁編程從入門到精通》一書從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例,詳細介紹了使用JavaScript語言進行程序開發應該掌握的各方面技術。《JavaScript網頁編程從入門到精通》共分28章,具體內容包括JavaScript概述、基本語法、函數、JavaScript對象與數組、字符串處理、正則表達式、函數式編程、面向對象編程、瀏覽器對象模型、事件處理、文檔對象模型、客戶端存儲、腳本化CSS、JavaScript中的XML和JSON、JavaScript通信、HTML5新技術等。所有知識都結合具體實例進行介紹,涉及的程序代碼給出了詳細的註釋,可以幫助讀者輕松領會JavaScript語言精髓,快速提高開發技能。《JavaScript網頁編程從入門到精通》適用於從未接觸過網頁製作的初級讀者,以及有一定網頁製作基礎,想靈活使用Dreamweaver、Flash和Photoshop軟件以提高製作技能的中級讀者自學使用,也可作為高等院校電腦專業以及相關培訓班的教學用書。

作者簡介

楊凡,資深Web技術專家,有10餘年開發經驗,是國內較早專業從事Web開發的一線技術人員和培訓講師。一直致力於對HTML5、JavaScript、CSS3、jQuery、jQUery Mobile等Web開發技術的研究和實踐,在HTML頁面的優化與用戶體驗的研究,以及頁面框架搭建、數據流向分析、頁面靜態優化等方面都擁有豐富的實踐經驗。他還是微軟技術方面的專家,精通C#、ASP.NET和SQL Server等技術。

目錄大綱

第1章JavaScript概述
1.1JavaScript發展歷史
1.1.1第一個網頁腳本語言
1.1.2Netscape發明了JavaScript 
1.1.3三足鼎立
1.1.4ECMAScript誕生
1.2JavaScript版本
1.3ECMAScript概述
1.3.1ECMAScript和JavaScript的關係
1.3.2ECMAScript發展歷史
1.4JavaScript實現
1.4.1JavaScript核心
1.4.2文檔對像模型
1.4.3瀏覽器對像模型
1.5JavaScript開發工具
1.5.1JavaScript編輯器
1.5.2JavaScript測試和調試

第2章在網頁中使用JavaScript 
視頻講解:51分鐘
2.1使用<script>標籤
2.1.1編寫第一個JavaScript程序
2.1.2腳本位置
2.1.3延遲執行腳本
2.1.4異步響應腳本
2.1.5在XHTML中使用JavaScript腳本
2.1.6兼容不支持JavaScript的瀏覽器
2.2比較嵌入代碼與鏈接腳本
2.3使用<noscript>標籤
2.4JavaScript執行順序
2.4.1正常執行順序
2.4.2預編譯提前
2.4.3代碼塊的執行順序
2.4.4事件響應順序
2.4.5動態輸出腳本字符串
2.5瀏覽器與JavaScript 
2.5 .1瀏覽器內核
2.5.2瀏覽器錯誤報告
2.6JavaScript錯誤處理
2.6.1使用try—catch 
2.6.2使用finally 
2.6.3錯誤類型
2.6.4拋出錯誤
2.6.5案例:設計拋出錯誤時機
2.6 .6錯誤事件
2.6.7錯誤類型
2.6.8案例:記錄錯誤
2.7JavaScript代碼調試
2.7.1使用控制台
2.7.2顯示錯誤信息
2.7.3拋出錯誤
2.7.4IE錯誤

第3章JavaScript基本語法
視頻講解:36分鐘
3.1詞法基礎
3.1.1字符編碼
3.1.2大小寫敏感
3.1.3標識符
3.1.4直接量
3.1.5關鍵字和保留字
3.1.6分隔符
3.1.7註釋
3.1.8轉義序列
3.2句法基礎
3.2.1認識詞、句和段
3.2.2分號
3.2.3大括號

第4章數據、類型和變量
視頻講解:109分鐘
4.1JavaScript數據類型概述
4.1.1JavaScript數據類型的特點
4.1.2JavaScript的基本數據類型
4.1.3值類型和引用類型
4.2值類型數據
4.2.1數值
4.2.2字符串
4.2.3布爾值
4.2.4Null 
4.2.5Undefined 
4.3引用型數據
4.3.1數組
4.3.2對象
4.3. 3函數
4.4數據類型檢測
4.4.1使用typeof 
4.4.2使用constructor 
4.4.3案例:在框架窗口檢測數組類型
4.4.4案例:設計完善的數據類型檢測工具
4.5數據類型轉換
4.5.1值類型轉換
4.5 .2引用型轉換
4.5.3轉換為字符串
4.5.4案例:轉換數字模式
4.5.5案例:設置數字轉換為字符串的小數位數
4.5.6轉換為數字
4.5.7轉換為布爾值
4.5. 8案例:裝箱和拆箱
4.5.9案例:強制轉換
4.6使用變量
4.6.1聲明變量
4.6.2變量的作用域
4.6.3變量的作用域鏈
4.6.4變量回收
4.6.5案例:變量污染
4.7案例實戰
4.7.1代碼題
4.7.2編程題

第5章運算符和表達式
視頻講解:113分鐘
5.1運算符和表達式概述
5.1.1認識運算符
5.1.2使用運算符
5.1.3認識表達式
5.1.4案例:優化表達式
5.2位運算符
5.2.1位運算概述
5.2.2邏輯位運算
5.2.3移位運算
5.3算術運算符
5.3.1加法運算
5.3.2減法運算
5.3.3乘法運算
5.3.4除法運算
5.3.5餘數運算
5.3.6取反運算
5.3.7遞增和遞減
5.4邏輯運算符
5.4.1邏輯與運算符
5.4.2邏輯或運算符
5.4.3邏輯非運算符
5.4.4案例:邏輯運算訓練
5.5關係運算符
5.5.1大小比較
5.5.2案例:包含檢測
5.5.3案例:等值檢測
5.6賦值運算符
5.7對像操作運算符
5.7.1new運算符
5.7.2delete運算符
5.7.3中括號和點號運算符
5.7.4小括號運算符
5.8其他運算符
5.8. 1條件運算符
5.8.2逗號運算符
5.8.3void運算符
5.8.4typeof運算符
5.9案例實戰
5.9.1表達式計算
5.9.2表達式描述
5.9.3編程題

第6章語句和結構
視頻講解:122分鐘
6.1語句概述
6.2簡單語句
6.2.1表達式語句
6.2.2複合語句
6.2.3聲明語句
6.2.4空語句
6.3分支結構
6.3.1if語句
6.3.2條件嵌套
6.3.3案例:優化條件結構
6.3 .4案例:條件誤用
6.3.5switch語句
6.3.6default從句
6.3.7案例:比較if和switch 
6.3.8案例:優化分支結構
6.4循環結構
6.4.1while語句
6.4.2do/while語句
6.4.3for語句
6.4.4for/in語句
6.4.5案例:使用for/in 
6.4.6案例:比較while和for 
6.4.7案例:優化循環結構
6.5結構跳轉
6.5.1標籤語句
6.5.2break語句
6.5 .3continue語句
6.6異常處理
6.6.1異常概述
6.6.2throw語句
6.6.3try/catch/finally語句
6.6.4案例:改變作用域鏈
6.7函數結構
6.7.1function語句
6.7.2return語句
6.8with語句
6.9案例實戰
6.9 .1編程題
6.9.2提升條件檢測性能
6.9.3提升循環迭代性能
6.9.4設計楊輝三角

第7章操作字符串
視頻講解:93分鐘
7.1定義字符串
7.1.1字符串直接量
7.1.2構造字符串
7.1.3使用字符編碼
7.2使用字符串
7.2.1案例:計算字符串長度
7.2.2案例:連接字符串
7.2.3案例:查找字符串
7.2.4案例:截取子字符串
7.2.5案例:編輯字符串
7.2.6案例:靈活使用replace()方法
7.2.7案例:比較字符串
7.2.8案例:把字符串轉換為數組
7.2.9案例:字符串的類型和值
7.2 .10案例:格式化字符串
7.3案例實戰
7.3.1修剪字符串
7.3.2檢測特殊字符
7.3.3優化字符串連接
7.4加密和解密
7.4.1JavaScript編碼和解碼
7.4.2案例:Unicode編碼
7.4.3案例:Unicode解碼
7.4.4綜合實戰:自定義加密和解密方法

第8章使用正則表達式
視頻講解:102分鐘
8.1認識正則表達式
8.2定義正則表達式
8.2.1構造正則表達式
8.2.2正則表達式直接量
8.3字符匹配
8.3.1認識普通字符和元字符
8.3.2字符直接量
8.3.3簡單字符類
8.3.4反義字符類
8.3.5字符範圍類
8.3.6預定義字符類
8.4重複匹配
8.4.1簡單重複性匹配
8.4.2貪婪匹配
8.4.3惰性匹配
8.4.4支配匹配
8.5高級匹配
8.5.1分組
8.5.2案例:分組應用
8.5.3引用
8.5.4案例:非引用型分組
8.5.5選擇
8.5.6聲明
8.5.7邊界
8.5.8錨記
8.5.9標誌
8.6使用RegExp對象
8.6 .1實例屬性
8.6.2靜態屬性
8.6.3案例應用
8.7綜合案例:設計表單驗證

第9章操作數組
視頻講解:134分鐘
9.1定義數組
9.1.1構造數組
9.1.2數組直接量
9.2使用數組
9.2. 1存取數組元素
9.2.2數組長度
9.2.3案例:比較對象與數組
9.2.4案例:定義多維數組
9.3數組的應用
9.3.1案例:檢索數組
9.3.2案例:添刪元素
9.3.3案例:操作子數組
9.3.4案例:數組排序
9.3.5案例:使用數組排序函數
9.3.6案例:數組與字符串轉換
9.4案例實戰
9.4.1快速交換
9.4.2數組下標
9.4.3擴展數組方法
9.4.4設計迭代器
9.4.5使用迭代器
9.4.6使用數組維度
9.5綜合實踐:排序算法設計
9.5.1插入排序
9.5.2二分插入排序
9.5.3選擇排序
9.5.4冒泡排序
9.5.5快速排序
9.5.6計數排序

第10章使用對象
視頻講解:79分鐘
10.1認識對象
10.2對象分類
10.2.1原生對象
10.2.2宿主對象
10.3對象基本操作
10.3.1創建對象
10.3.2引用對象
10.3.3銷毀對象
10.4屬性基本操作
10.4.1定義屬性
10.4 .2訪問屬性
10.4.3賦值和刪除屬性
10.4.4對象方法
10.5原生對像類型
10.5.1構造對象
10.5.2實例對象
10.5.3原型對象
10.6使用構造器
10.7使用對象基本方法
10.7.1案例:重寫toString 
10.7.2案例:重寫valueOf 
10.7.3案例:檢測私有屬性
10.7.4案例:檢測枚舉屬性
10.7.5案例:檢測原型對象
10.8使用原生對象
10.8.1Global對象
10.8.2Math對象
10.8.3Date對象
10.9綜合案例:設計計算器

第11章使用函數
視頻講解:117分鐘
11.1認識函數
11.1.1函數是代碼塊
11.1.2函數是數據
11.1.3函數是對象
11.2定義函數
11.2.1構造函數
11.2.2函數直接量
11.2.3定義嵌套函數
11.3案例:優化函數定義
11.3.1函數作用域
11.3.2解析機制
11.3.3兼容性和靈活性
11.4使用函數
11.4.1函數返回值
11.4.2調用函數
11.4.3函數生命週期
11.4.4函數作用域
11.5使用參數
11.5.1認識形參和實參
11.5.2使用Arguments對象
11.5.3使用callee回調函數
11.5. 4案例實戰
11.6使用Function對象
11.6.1獲取函數形參個數
11.6.2自定義屬性
11.6.3案例:使用call()和apply()
11.7函數解析機制
11.7.1詞法作用域與執行作用域
11.7.2執行上下文和作用域鏈
11.7.3調用對象
11.8函數中的this 
11.8.1案例:認識this 
11.8.2案例:使用this 
11.8.3案例:this安全策略
11.8.4案例:this應用
11.9案例實戰
11.9.1函數調用模式
11.9.2擴展函數方法
11.9.3綁定函數
11.9.4鍊式語法
11.9.5函數節流
11.9.6使用Arguments模擬重載

第12章函數式編程
視頻講解:116分鐘
12.1函數式編程概述
12.1.1函數是第一型
12.1.2函數是運算元
12.1.3函數是數據閉包
12.2表達式運算
12.2.1連續運算
12.2.2把命令轉換為表達式
12.2.3表達式中的函數
12.3遞歸運算
12.3.1認識遞歸
12.3.2案例:Hanoi(漢諾)塔算法
12.3.3案例:尾遞歸算法
12.3.4案例:Fibonacci(斐波那契)數列
12.3.5遞歸算法的優化
12.4閉包函數
12.4.1認識閉包函數
12.4.2使用閉包
12.4.3閉包標識系統
12.4.4閉包作用域和生命週期
12.4.5案例:比較函數調用和引用
12.4.6案例:比較閉包函數和函數實例
12.4.7案例:比較閉包函數和調用對象
12.4.8案例:保護閉包數據的獨立性
12.4.9案例:定義構造函數閉包
12.4.10案例:閉包存儲器
12.4.11案例:事件處理中閉包應用
12.4.12綜合案例:設計折疊面板
12.4.13案例:在循環體和異步回調中慎重使用閉包
12.5案例實戰
12.5.1惰性求值
12.5.2記憶
12.5.3套用
12.5.4模塊化
12.5.5柯里化
12.5.6高階函數

第13章面向對象編程
視頻講解:109分鐘
13.1認識類
13.2定義類
13.2.1案例:工廠模式
13.2.2案例:構造函數模式
13.2.3案例:原型模式
13.2.4案例:構造函數原型模式
13.2 .5案例:動態原型模式
13.3接口
13.3.1認識接口
13.3.2定義接口
13.3.3使用建議
13.4原型模型
13.4.1認識prototype
13.4.2定義原型
13.4.3案例:原型屬性和本地屬性
13.4.4案例:應用原型
13.4.5認識原型域和原型域鏈
13.4.6原型副作用
13.5繼承
13.5.1認識JavaScript繼承機制
13.5.2原型繼承
13.5.3類繼承
13.5.4案例:封裝類繼承模式
13.5.5實例繼承
13.5.6複製繼承
13.5.7克隆繼承
13.5.8混合繼承
13.5.9多重繼承
13.5.10摻元類
13.6封裝
13.6. 1被動封裝
13.6.2主動封裝
13.6.3靜態方法
13.7多態
13.7.1案例:方法重載和覆蓋
13.7.2案例:類的多態
13.8構造和析構
13.8.1案例:構造函數
13.8.2案例:析構函數
13.9案例實戰
13.9.1惰性實例化
13.9.2安全構造對象
13.9.3設計超類和子類
13.9.4設計元類
13.9.5分支函數
13.9.6惰性載入函數

第14章BOM 
視頻講解:43分鐘
14.1認識BOM 
14.2使用Window對象
14.2.1全局作用域
14.2.2Window對像生命週期
14.2.3人機交互接口
14.2.4案例:控制彈出窗口
14.2.5案例:框架集通信
14.3使用Navigator對象
14.3.1了解瀏覽器檢測方法
14.3.2案例:檢測瀏覽器類型和版本
14.3.3案例:檢測客戶端操作系統
14.4使用Location和History對象
14.4.1案例:使用Location對象
14.4.2使用History對象
14.5使用Screen對象
14.5 .1案例:使用Screen對象控制窗口大小
14.5.2案例:使用Window對象控制窗口大小
14.6使用Document對象
14.6.1認識Document 
14.6.2使用0級文檔模型操作文檔
14.6.3案例:動態生成文檔

第15章DOM 
視頻講解:116分鐘
15.1認識DOM 
15.2使用節點
15.2.1節點類型
15.2.2節點名稱和值
15.2.3節點關係
15.2.4案例:訪問節點
15.2.5案例:操作節點
15.3使用文檔節點
15.3.1訪問文檔子節點
15.3.2訪問文檔信息
15.3.3訪問文檔元素
15.3.4使用HTML5Document 
15.4使用元素節點
15.4.1訪問元素
15.4.2案例:遍曆元素
15.4.3創建元素
15.4.4案例:複製節點
15.4.5案例:插入節點
15.4.6案例:刪除節點
15.4.7案例:替換節點
15.5使用文本節點
15.5.1訪問文本節點
15.5.2創建文本節點
15.5.3操作文本節點
15.5.4讀取HTML字符串
15.5.5案例:插入HTML字符串
15.5.6案例:替換HTML字符串
15.5.7案例:插入文本
15.6使用文檔片段節點
15.7使用屬性節點
15.7.1訪問屬性節點
15.7.2案例:讀取屬性值
15.7.3案例:設置屬性值
15.7.4案例:刪除屬性
15.7.5案例:使用類選擇器
15.7.6自定義屬性
15.8使用範圍
15.8.1創建範圍
15.8.2案例:選擇範圍
15.8.3案例:設置範圍
15.8.4案例:操作範圍內容
15.8.5案例:插入範圍內容
15.9使用CSS選擇器

第16章事件處理
視頻講解:93分鐘
16.1事件概述
16.1.1事件模型分類
16.1.2事件流
16.1.3事件類型
16.2基本事件模型
16.2.1基本事件類型
16.2.2綁定事件
16.2.3事件處理函數的返回值
16.2.4事件處理函數的參數
16.2.5事件處理函數中的this 
16.3標準事件模型
16.3.1事件傳播
16.3.2註冊事件
16.3. 3註銷事件
16.3.4事件類型
16.3.5Event對象
16.4IE事件模型
16.4.1註冊和銷毀事件
16.4.2Event對象
16.5鼠標事件開發
16.5.1鼠標點擊
16.5.2案例:鼠標移動
16.5.3案例:鼠標經過
16.5.4案例:鼠標來源
16.5.5案例:鼠標定位
16.5.6鼠標按鍵
16.6鍵盤事件開發
16.6.1認識鍵盤事件的屬性
16.6.2鍵盤事件響應順序
16.7頁面事件開發
16.7.1頁面初始化
16.7.2結構初始化
16.7.3頁面卸載
16.7.4窗口重置
16.7.5頁面滾動
16.7.6錯誤處理
16.8UI事件開發
16.9表單事件開發
16.9.1選擇文本
16.9.2監測值變化
16.9.3提交表單
16.9.4重置表單
16.10案例實戰:自定義事件
16.10.1設計彈出對話框
16.10.2設計遮罩層
16.10.3定義事件雛形
16.10.4設計事件觸發模型
16.10.5應用事件模型

第17章腳本化CSS 
視頻講解:117分鐘
17.1腳本化CSS概述
17.1.1認識CSS腳本屬性
17.1.2CSS樣式模型概述
17.2操作行內樣式
17.2.1CSS腳本屬性名規範
17.2.2使用style對象
17.3操作樣式表
17.3.1使用styleSheets對象
17.3.2訪問樣式表中的樣式
17.3.3讀取樣式的選擇符
17.3.4編輯樣式
17.3.5添加樣式
17.3.6訪問顯示樣式
17.4控制大小
17.4.1案例:從樣式表中讀取寬度和高度
17.4.2案例:把樣式屬性值轉換為實際值
17.4.3案例:使用offsetWidth和offsetHeight 
17.4.4案例:複雜環境下的元素尺寸
17.4.5案例:可視區域尺寸
17.4.6案例:瀏覽器窗口尺寸
17.5位移和定位
17.5.1案例:獲取窗口位置
17.5.2案例:獲取相對包含框的位置
17.5.3案例:獲取定位包含框的位置
17.5.4案例:設置元素的偏移位置
17.5.5案例:設置元素的相對位置
17.5.6案例:獲取鼠標指針的頁面位置
17.5.7案例:獲取鼠標指針在元素內的位置
17.5.8案例:獲取頁面滾動條的位置
17.5.9案例:設置頁面滾動條的位置
17.6顯示和隱藏
17.6.1案例:可見性
17.6.2案例:透明度
17.7設計動畫
17.7.1定時器
17.7.2案例:滑動
17.7.3案例:漸隱漸顯

第18章HTML5動畫設計
視頻講解:84分鐘
18.1HTML5canvas概述
18.1.1在頁面中添加canvas元素
18.1.2Canvas如何繪製圖形
18.1.3認識Canvas坐標
18.1.4何時不用Canvas
18.1.5如果瀏覽器不支持Canvas 
18.1.6檢測瀏覽器支持
18.2繪製基本圖形
18.2.1繪製直線
18.2.2繪製矩形
18.2.3繪製圓形
18.2.4繪製三角形
18.2.5清空畫布
18.3繪製曲線
18.3 .1繪製二次方貝塞爾曲線
18.3.2繪製三次方貝塞爾曲線
18.4變換圖形
18.4.1保存與恢復Canvas狀態
18.4.2移動坐標空間
18.4.3旋轉坐標空間
18.4.4縮放圖形
18.4. 5矩陣變換
18.5組合和裁切圖形
18.5.1組合圖形
18.5.2裁切路徑
18.6定義顏色和样式
18.6.1應用線型
18.6.2繪製線性漸變
18.6.3繪製徑向漸變
18.6.4繪製圖案
18.6. 5設置圖形的透明度
18.6.6創建陰影
18.7繪製文字
18.7.1繪製填充文字
18.7.2設置文字屬性
18.7.3繪製輪廓文字
18.7.4測量文字寬度
18.8嵌入圖像
18.8.1向Canvas中引入圖像
18.8.2改變圖像大小
18.8.3創建圖像切片

第19章Web存儲
視頻講解:69分鐘
19.1Cookie概述
19.1.1認識Cookie 
19.1.2Cookie字符串
19.2存取Cookie 
19.2.1寫入Cookie 
19.2.2設置Cookie有效期
19.2.3設置Cookie的域和路徑
19.2.4設置Cookie安全傳輸
19.2.5案例:完善寫入Cookie方法
19.2.6讀取Cookie信息
19.2.7修改和刪除Cookie信息
19.2.8Cookie的局限性及其突破
19.3綜合案例:Cookie應用
19.3.1封裝Cookie 
19.3.2打字遊戲
19.4WebStorage概述
19.4.1Cookie存儲機制的優缺點
19.4.2為什麼要用WebStorage 
19.4.3WebStorage的優勢和缺點
19.4.4瀏覽器支持概述
19.5使用WebStorage 
19.5.1檢查瀏覽器的支持性
19.5.2設置和獲取數據
19.5.3防止數據洩露
19.5.4WebStorage其他用法
19.5.5WebStorage事件監測
19.5.6案例1:設計網頁皮膚
19.5.7案例2:跟踪localStorage數據
19.5.8案例3:設計計數器
19.5.9綜合案例:Web應用項目實時跟踪
19.6WebSQL數據庫
19.6.1WebSQL數據庫概述
19.6.2使用WebSQL數據庫
19.6.3實例1:創建簡單的本地數據庫
19.6.4實例2:批量存儲本地數據
19.6.5綜合案例:WebStorage和WebSQL混合開發

第20章JavaScript通信
視頻講解:69分鐘
20.1HTTP概述
20.2使用隱藏框架
20.2.1認識隱藏框架
20.2.2案例:使用隱藏框架
設計異步交互
20.2.3使用iframe 
20.3使用JSONP 
20.3.1認識<script>標籤
20.3.2案例:腳本化script元素
20.3.3案例:傳遞參數
20.3 .4案例:設計響應類型
20.4使用Ajax 
20.4.1認識XMLHttpRequest 
20.4.2定義XMLHttpRequest對象
20.4.3建立XMLHttpRequest連接
20.5發送請求
20.5.1發送GET請求
20.5.2發送POST請求
20.5.3案例:把數據轉換為串行字符串
20.6異步監測
20.6.1跟踪狀態
20.6.2中止請求
20.7獲取響應
20.7.1XML 
20.7.2HTML 
20.7.3JavaScript 
20.7.4JSON 
20.7.5Text 
20.7.6獲取頭部消息
20.8案例實戰
20.8.1封裝異步交互
20.8.2設計動態響應的Tab面板
20.8.3使用燈標

第21章XML 
視頻講解:26分鐘
21.1XML概述
21.2XML文檔對像模型
21.2. 1認識XMLDOM 
21.2.2讀取XML 
21.3在IE中操作XML 
21.3.1創建XMLDOM對象
21.3.2加載XML數據
21.3.3錯誤處理
21.4使用DOM2操作XML 
21.4.1創建XMLDOM對象
21.4.2加載XML數據
21.4 .3讀取XML數據
21.5使用XPath 
21.5.1熟悉XPath基本語法
21.5.2IE中的XPath 
21.5.3DOM3中的XPath
21.6案例實戰
21.6.1在網頁中顯示XML數據
21.6.2異步加載XML數據

第22章JSON 
22.1JSON概述
22.2比較JSON與XML 
22.3JSON語法
22.3.1簡單值
22.3.2對象
22.3.3數組
22.4JSON解析和序列化
22.5案例:優化JSON數據

第23章ECMAScript5 
視頻講解:74分鐘
23.1ECMAScript5概述
23.2瀏覽器支持
23.3嚴格模式
23.3.1啟用嚴格模式
23.3.2嚴格模式的執行限制
23.4JSON 
23.4.1案例:解析JSON 
23.4.2案例:序列化JSON 
23.5Object 
23.5.1創建對象
23.5.2定義屬性
23.5.3訪問屬性
23.5.4配置屬性的特性
23.5.5檢測屬性的特性
23.6Array 
23.6.1定位
23.6.2迭代
23.6.3匯總
23.7Function和String 

第24章ECMAScript6
24.1ECMAScript6概述
24.1.1兼容性
24.1.2使用ECMAScript6 
24.2變量
24.2.1let命令
24.2.2const命令
24.2.3數組解構賦值
24.2.4對象解構賦值
24.2.5案例:解構應用
24.3字符和字符串
24.3.1字符
24.3.2字符串
24.3.3模板字符串
24.4數值
24.4.1進製表示
24.4.2Number方法
24.4.3Math方法
24.5數組
24.5.1轉換
24.5.2實例
24.5.3推導
24.5.4監聽
24.6對象
24.6. 1新增方法
24.6.2原型方法
24.6.3增強語法
24.6.4屬性名表達式
24.6.5符號數據
24.6.6代理防護層
24.6.7監聽
24.7函數
24.7.1默認值
24.7.2rest參數
24.7.3擴展運算符
24.7.4箭頭函數
24.8數據結構
24.8.1Set
24.8.2WeakSet 
24.8.3Map 
24.8.4WeakMap 
24.9循環遍歷
24.9.1遍歷器
24.9.2for/of循環
24.10狀態機
24.10.1使用Generator函數
24.10.2next()方法
24.10.3異步操作
24.10.4forof循環
24.10.5throw方法
24.10.6yield*語句
24.11預處理
24.11.1基本用法
24.11.2then()方法
24.11.3catch()方法
24.11.4all()和race()方法
24.11.5resolve()和reject()方法
24.11.6async函數
24.12類和模塊
24.12.1類
24.12.2模塊

第25章移動定位
25.1位置信息概述
25.1.1為什麼要學習Geolocation 
25.1.2位置信息表示方式
25.1.3位置信息來源
25.1.4IP定位
25.1.5GPS定位
25.1 .6Wi—Fi定位
25.1.7手機定位
25.1.8自定義定位
25.2使用GeolocationAPI 
25.2.1檢查瀏覽器支持性
25.2.2獲取當前地理位置
25.2.3監視位置信息
25.2.4停止獲取位置信息
25.2.5隱私保護
25.2.6處理位置信息
25.2.7使用position對象
25.3案例實戰
25.3.1使用Google地圖
25.3.2跟踪行走速度

第26章多線程處理
視頻講解:25分鐘
26.1WebWorkers概述
26.1.1認識WebWorkers 
26.1.2瀏覽器支持概述
26.1.3熟悉WebWorkers成員
26.2使用WebWorkers 
26.2. 1檢查瀏覽器支持性
26.2.2創建WebWorkers 
26.2.3與WebWorkers通信
26.2.4案例:使用WebWorkers 
26.3案例實戰
26.3.1使用多線程實現後台運算
26.3.2在後台過濾值
26.3.3多任務並發處理
26.3.4在多線程之間通信
26.3.5使用線程技術計算Fibonacci數列
26.3.6使用多線程繪圖
26.4綜合案例:模擬退火算法
26.4.1認識模擬退火算法
26.4.2編寫應用主頁面
26.4.3編寫Worker.js 
26.4.4與WebWorker通信

第27章離線應用
視頻講解:21分鐘
27.1HTML5離線應用概述
27.1.1為什麼要學習HTML5離線應用
27.1.2瀏覽器支持概述
27.2HTML5離線應用詳解
27.2.1解析manifest文件
27.2.2搭建離線應用程序
27.2.3檢查瀏覽器是否支持
27.2.4離線緩存更新實現
27.2.5JavaScript接口實現
27.2.6離線存儲事件監聽
27.3案例實戰:緩存首頁
27.4案例實戰:離線編輯內容
27.5案例實戰:離線跟踪

第28章案例開發
視頻講解:23分鐘
28.1設計小程序:萬年曆
28.2設計遊戲:俄羅斯方塊
28.2.1設計遊戲界面
28.2.2設計遊戲模型
28.2 .3實現遊戲功能