第1章 引言
1.1 回顧歷史
1.2 變革之風(fēng)
1.3 分析現(xiàn)狀
1.4 展望未來
1.5 面向?qū)ο蟪绦蛟O(shè)計
1.5.1 對象
1.5.2 類
1.5.3 封裝
1.5.4 聚合
1.5.5 繼承
1.5.6 多態(tài)
1.6 OOP概述
1.7 訓(xùn)練環(huán)境設(shè)置
1.8 使用Firebug控制臺
1.9 本章小結(jié)
第2章 基本數(shù)據(jù)類型、數(shù)組、循環(huán)及條件表達(dá)式
2.1 變量
2.2 操作符
2.3 基本數(shù)據(jù)類型
2.3.1 查看類型操作符——typeof
2.3.2 數(shù)字
2.3.3 字符串
2.3.4 布爾值
2.3.5 Undefined與null
2.4 基本數(shù)據(jù)類型綜述
2.5 數(shù)組
2.5.1 增加、更新數(shù)組元素
2.5.2 刪除元素
2.5.3 數(shù)組的數(shù)組
2.6 條件與循環(huán)
2.6.1 代碼塊
2.6.2 循環(huán)
2.7 注釋
2.8 本章小結(jié)
2.9 練習(xí)題
第3章 函數(shù)
3.1 什么是函數(shù)
3.1.1 調(diào)用函數(shù)
3.1.2 參數(shù)
3.2 預(yù)定義函數(shù)
3.2.1 parseInt()
3.2.2 parseFloat()
3.2.3 isNaN()
3.2.4 isFinite()
3.2.5 URI的編碼與反編碼
3.2.6 eval()
3.2.7 一點驚喜—alert()函數(shù)
3.3 變量的作用域
3.4 函數(shù)也是數(shù)據(jù)
3.4.1 匿名函數(shù)
3.4.2 回調(diào)函數(shù)
3.4.3 回調(diào)示例
3.4.4 自調(diào)函數(shù)
3.4.5 內(nèi)部(私有)函數(shù)
3.4.6 返回函數(shù)的函數(shù)
3.4.7 能重寫自己的函數(shù)
3.5 閉包
3.5.1 作用域鏈
3.5.2 詞法作用域
3.5.3 利用閉包突破作用域鏈
3.5.4 Getter與Setter
3.5.5 迭代器
3.6 本章小結(jié)
3.7 練習(xí)題
第4章 對象
4.1 從數(shù)組到對象
4.1.1 元素、屬性、方法
4.1.2 哈希表、關(guān)聯(lián)型數(shù)組
4.1.3 訪問對象的屬性
4.1.4 調(diào)用對象的方法
4.1.5 修改屬性與方法
4.1.6 使用this值
4.1.7 構(gòu)造器函數(shù)
4.1.8 全局對象
4.1.9 構(gòu)造器屬性
4.1.10 instanceof操作符
4.1.11 返回對象的函數(shù)
4.1.12 傳遞對象
4.1.13 對象比較
4.1.14 Firebug控制臺中的對象
4.2 內(nèi)建對象
4.2.1 Object
4.2.2 Array
4.2.3 Function
4.2.4 Boolean
4.2.5 Number
4.2.6 String
4.2.7 Math
4.2.8 Date
4.2.9 RegExp
4.2.10 Error對象
4.3 本章小結(jié)
4.4 練習(xí)題
第5章 原型
5.1 原型屬性
5.1.1 利用原型添加方法與屬性
5.1.2 使用原型的方法與屬性
5.1.3 自身屬性與原型屬性
5.1.4 利用自身屬性重寫原型屬性
5.1.5 isPrototypeOf()方法
5.1.6 神秘的_proto_鏈接
5.2 擴展內(nèi)建對象
5.2.1 關(guān)于擴展內(nèi)建對象的討論
5.2.2 一些原型陷阱
5.3 本章小結(jié)
5.4 練習(xí)題
第6章 繼承
6.1 原型鏈
6.1.1 原型鏈?zhǔn)纠?
6.1.2 將共享屬性遷移到原型中去
6.2 只繼承于原型
6.3 uber—子對象訪問父對象的方式
6.4 將繼承部分封裝成函數(shù)
6.5 屬性拷貝
6.6 小心處理引用拷貝
6.7 對象之間的繼承
6.8 深拷貝
6.9 object()
6.10 原型繼承與屬性拷貝的混合應(yīng)用
6.11 多重繼承
6.12 寄生式繼承
6.13 構(gòu)造器借用
6.14 本章小結(jié)
6.15 案例學(xué)習(xí):圖形繪制
6.15.1 分析
6.15.2 實現(xiàn)
6.15.3 測試
6.16 練習(xí)題
第7章 瀏覽器環(huán)境
7.1 在HTML頁面中引入JavaScript代碼
7.2 概述:BOM與DOM
7.3 BOM
7.3.1 window對象再探
7.3.2 window.navigator
7.3.3 Firebug的備忘功能
7.3.4 window.location
7.3.5 window.history
7.3.6 window.frames
7.3.7 window.screen
7.3.8 window.open()/close()
7.3.9 window.moveTo()、window.resizeTo()
7.3.10 window.alert()、window.prompt()、window.confirm()
7.3.11 window.setTimeout()、window.setInterval()
7.3.12 window.document
7.4 DOM
7.4.1 Core DOM與HTML DOM
7.4.2 DOM節(jié)點的訪問
7.4.3 DOM節(jié)點的修改
7.4.4 新建節(jié)點
7.4.5 移除節(jié)點
7.4.6 只適用于HTML的DOM對象
7.5 事件
7.5.1 內(nèi)聯(lián)HTML屬性法
7.5.2 元素屬性法
7.5.3 DOM的事件監(jiān)聽器
7.5.4 捕捉法與冒泡法
7.5.5 阻斷傳播
7.5.6 防止默認(rèn)行為
7.5.7 跨瀏覽器事件監(jiān)聽器
7.5.8 事件類型
7.6 XMLHttpRequest對象
7.6.1 發(fā)送請求
7.6.2 處理響應(yīng)
7.6.3 在早于7的IE版本中創(chuàng)建XMLHttpRequest對象
7.6.4 A代表異步
7.6.5 X代表XML
7.6.6 實例示范
7.7 本章小結(jié)
7.8 練習(xí)題
第8章 編程模式與設(shè)計模式
8.1 編程模式
8.1.1 行為隔離
8.1.2 命名空間
8.1.3 初始化分支
8.1.4 延遲定義
8.1.5 配置對象
8.1.6 私有屬性和方法
8.1.7 特權(quán)函數(shù)
8.1.8 私有函數(shù)的公有化
8.1.9 自執(zhí)行函數(shù)
8.1.10 鏈?zhǔn)秸{(diào)用
8.1.11 JSON
8.2 設(shè)計模式
8.2.1 單件模式1
8.2.2 單件模式2
8.2.3 工廠模式
8.2.4 裝飾器模式
8.2.5 觀察者模式
8.3 本章小結(jié)
附錄A 保留字
附錄B 內(nèi)建函數(shù)
附錄C 內(nèi)建對象
附錄D 正則表達(dá)式
