發表於2024-12-23
JavaScript忍者秘籍 pdf epub mobi txt 電子書 下載
本書內容極具深度,技術含量高,作者是jQuery JavaScript庫的創造者,在JS領域享有盛譽。
JavaScript語言非常重要,相關的技術圖書也很多,但沒有任何一本書對JavaScript語言的重要部分(函數、閉包和原型)進行深入、全麵的介紹,也沒有任何一本書講述跨瀏覽器代碼的編寫。本書是jQuery庫創始人編寫的一本深入剖析JavaScript語言的書。
可以開始編寫更加齣彩的JavaScript應用程序瞭,甚至也可以編寫自己的代碼庫和框架。
本書包括以下內容:
函數、對象、閉包、正則錶達式等;
正確的角度探視應用程序和庫;
現代JavaScript設計;
處理跨瀏覽器開發的復雜性。
第一部分 準入訓練
第1章 進入忍者世界 3
1.1 即將探索的JavaScript
庫 4
1.2 理解JavaScript語言 5
1.3 跨瀏覽器注意事項 6
1.4 當前最佳實踐 9
1.4.1 當前最佳實踐:測試 9
1.4.2 當前最佳實踐:性能
分析 9
1.5 總結 10
第2章 利用測試和調試武裝
自己 11
2.1 調試代碼 12
2.1.1 日誌記錄 12
2.1.2 斷點 14
2.2 測試用例生成 15
2.3 測試框架 17
2.3.1 Qunit 19
2.3.2 YUI Test 19
2.3.3 JsUnit 19
2.3.4 新齣的單元測試框架 20
2.4 測試套件基礎知識 20
2.4.1 斷言 20
2.4.2 測試組 21
2.4.3 異步測試 23
2.5 總結 25
第二部分 見習訓練
第3章 函數是根基 29
3.1 函數的獨特之處? 30
3.1.1 JavaScript的函數式特性
為何如此重要? 31
3.1.2 使用比較器進行排序 35
3.2 函數聲明 37
3.2.1 作用域和函數 40
3.3 函數調用 44
3.3.1 從參數到函數形參 45
3.3.2 作為函數進行調用 46
3.3.3 作為方法進行調用 47
3.3.4 作為構造器進行調用 49
3.3.5 使用apply()和call()方法進行調用 52
3.4 總結 56
第4章 揮舞函數 57
4.1 匿名函數 57
4.2 遞歸 59
4.2.1 普通命名函數中的
遞歸 60
4.2.2 方法中的遞歸 61
4.2.3 引用的丟失問題 62
4.2.4 內聯命名函數 64
4.2.5 callee屬性 66
4.3 將函數視為對象 67
4.3.1 函數存儲 67
4.3.2 自記憶函數 69
4.3.3 僞造數組方法 71
4.4 可變長度的參數列錶 73
4.4.1 使用apply()支持可變
參數 73
4.4.2 函數重載 74
4.5 函數判斷 82
4.6 總結 83
第5章 閉包 85
5.1 閉包是如何工作的 86
5.2 使用閉包 90
5.2.1 私有變量 90
5.2.2 迴調(Callback)與
計時器(timer) 92
5.3 綁定函數上下文 95
5.4 偏應用函數 98
5.5 函數重載 101
5.5.1 緩存記憶 101
5.5.2 函數包裝 104
5.6 即時函數 106
5.6.1 臨時作用域和私有
變量 107
5.6.2 循環 111
5.6.3 類庫包裝 112
5.7 總結 113
第6章 原型與麵嚮對象 115
6.1 實例化和原型 116
6.1.1 對象實例化 116
6.1.2 通過構造器判斷對象
類型 123
6.1.3 繼承與原型鏈 124
6.1.4 HTML DOM原型 128
6.2 疑難陷阱 130
6.2.1 擴展對象 130
6.2.2 擴展數字 132
6.2.3 子類化原生對象 133
6.2.4 實例化問題 134
6.3 編寫類風格的代碼 138
6.3.1 檢測函數是否可
序列化 141
6.3.2 子類的實例化 142
6.3.3 保留父級方法 142
6.4 總結 144
第7章 正則錶達式 147
7.1 為什麼正則錶達式
很牛 148
7.2 正則錶達式進階 149
7.2.1 正則錶達式解釋 149
7.2.2 術語與操作符 150
7.3 編譯正則錶達式 154
7.4 捕獲匹配的片段 156
7.4.1 執行簡單的捕獲 157
7.4.2 用全局錶達式進行
匹配 158
7.4.3 捕獲的引用 159
7.4.4 沒有捕獲的分組 160
7.5 利用函數進行替換 161
7.6 利用正則錶達式解決常見
問題 164
7.6.1 修剪字符串 164
7.6.2 匹配換行符 166
7.6.3 Unicode 166
7.6.4 轉義字符 167
7.7 總結 168
第8章 馴服綫程和定時器 169
8.1 定時器和綫程是如何
工作的 170
8.1.1 設置和清除定時器 170
8.1.2 執行綫程中的定時器
執行 170
8.1.3 Timeout與Interval之間的區彆 172
8.2 定時器延遲的最小化及其
可靠性 173
8.3 處理昂貴的計算
過程 176
8.4 中央定時器控製 179
8.5 異步測試 182
8.6 總結 183
第三部分 忍者訓練
第9章 忍者點金術:運行時代碼
求值 187
9.1 代碼求值機製 187
9.1.1 用eval()方法進行
求值 188
9.1.2 用函數構造器進行
求值 191
9.1.3 用定時器進行求值 191
9.1.4 全局作用域內的求值
操作 192
9.1.5 安全的代碼求值 194
9.2 函數反編譯 195
9.3 代碼求值實戰 198
9.3.1 JSON轉化 198
9.3.2 導入有命名空間的
代碼 199
9.3.3 JavaScript壓縮和混淆 200
9.3.4 動態重寫代碼 202
9.3.5 麵嚮切麵的腳本標簽 202
9.3.6 元語言和領域特定
語言 204
9.4 總結 207
第10章 With語句 209
10.1 with是怎麼迴事? 210
10.1.1 在with作用域內引用
屬性 210
10.1.2 在with作用域內進行
賦值 211
10.1.3 性能方麵的注意
事項 213
10.2 真實示例 215
10.3 導入有命名空間的
代碼 217
10.4 測試 217
10.5 使用with進行
模闆化 218
10.6 總結 220
第11章 開發跨瀏覽器
策略 223
11.1 選擇要支持的
瀏覽器 223
11.2 五大開發關注點 225
11.2.1 瀏覽器Bug和瀏覽器
差異 226
11.2.2 瀏覽器bug修復 226
11.2.3 與外部代碼(標記)一起
共存 228
11.2.4 缺失的功能 232
11.2.5 迴歸 233
11.3 實現策略 235
11.3.1 安全的跨瀏覽器
修復 235
11.3.2 對象檢測 236
11.3.3 特徵仿真 238
11.3.4 不可檢測的瀏覽器
問題 241
11.4 減少假設 243
11.5 總結 244
第12章 洞悉特性、屬性和
樣式 245
12.1 DOM特性和DOM
屬性 246
12.1.1 跨瀏覽器命名 248
12.1.2 命名限製 248
12.1.3 XML與HTML之間的
差異 249
12.1.4 自定義特性的行為 250
12.1.5 性能注事事項 250
12.2 跨瀏覽器的attribute
問題 254
12.2.1 DOM中的id/name
膨脹 254
12.2.2 URL規範化 256
12.2.3 style特性 257
12.2.4 type特性 257
12.2.5 tab index問題 258
12.2.6 節點名稱 259
12.3 令人頭疼的樣式
特性 259
12.3.1 樣式在何處? 260
12.3.2 樣式屬性命名 262
12.3.3 float樣式屬性 263
12.3.4 像素值的轉換過程 263
12.3.5 測量元素的高度和
寬度 264
12.3.6 通過opacity看
透明度 268
12.3.7 顔色屬性 270
12.4 獲取計算樣式 273
12.5 總結 276
第四部分 火影訓練
第13章 不老事件 281
13.1 綁定和解綁事件處理
程序 282
13.2 Event對象 286
13.3 處理程序的管理 289
13.3.1 集中存儲相關信息 289
13.3.2 管理事件處理程序 292
13.4 事件觸發 300
13.4.1 自定義事件 302
13.5 冒泡與委托 306
13.5.1 將事件委托給祖先
元素 307
13.5.2 修復瀏覽器的不足 307
13.6 文檔就緒事件(document
ready) 316
13.7 總結 318
第14章 DOM操作 321
14.1 嚮DOM中注入
HTML 322
14.1.1 將HTML轉換成
DOM 323
14.1.2 將DOM插入到
文檔中 326
14.1.3 腳本執行 328
14.2 剋隆元素 330
14.3 刪除元素 331
14.4 文本內容 333
14.4.1 設置文本 334
14.4.2 獲取文本 335
14.5 總結 336
第15章 CSS選擇器引擎 337
15.1 W3C Selectors API 338
15.2 利用XPath查找
元素 341
15.3 純DOM實現 342
15.3.1 對選擇器進行解析 345
15.3.2 查找元素 346
15.3.3 過濾結果集 347
15.3.4 遞歸和閤並 347
15.3.5 自下而上的選擇器
引用 348
15.4 總結 350
挺不錯的一本書!
評分程序員實在是太多瞭
評分非常不錯 值得購買
評分最近對前端感點興趣,買迴來研究研究
評分包裝完好,看上去不錯,內容還沒看。。。
評分圖書的樣式很新穎,希望對語言的學習有所幫助
評分這次京東圖書包裝挺好的,簡直驚瞭。
評分完美正版,完美!
評分商品質量好,送貨速度快,支持京東
JavaScript忍者秘籍 pdf epub mobi txt 電子書 下載