-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應(yīng)用
-
>
決戰(zhàn)行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調(diào)優(yōu)實踐之路
-
>
第一行代碼Android
-
>
JAVA持續(xù)交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學(xué)習(xí)
高性能JavaScript 版權(quán)信息
- ISBN:9787121266775
- 條形碼:9787121266775 ; 978-7-121-26677-5
- 裝幀:一般膠版紙
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>>
高性能JavaScript 本書特色
如果你使用 javascript 構(gòu)建交互豐富的 web 應(yīng)用,那么 javascript 代碼可能是造成你的web應(yīng)用速度變慢的主要原因。本書揭示的技術(shù)和策略能幫助你在開發(fā)過程中消除性能瓶頸。你將會了解如何提升各方面的性能,包括代碼的加載、運行、dom 交互、頁面生存周期等。雅虎的前端工程師 nicholas c. zakas 和其他五位 javascript 專家介紹了頁面代碼加載的**方法和編程技巧,來幫助你編寫更為高效和快速的代碼。你還會了解到構(gòu)建和部署文件到生產(chǎn)環(huán)境的**實踐,以及有助于定位線上問題的工具。
高性能JavaScript 內(nèi)容簡介
如果你使用 JavaScript 構(gòu)建交互豐富的 Web 應(yīng)用,那么 JavaScript 代碼可能是造成你的Web應(yīng)用速度變慢的主要原因。本書揭示的技術(shù)和策略能幫助你在開發(fā)過程中消除性能瓶頸。你將會了解如何提升各方面的性能,包括代碼的加載、運行、DOM 交互、頁面生存周期等。雅虎的前端工程師 Nicholas C. Zakas 和其他五位 JavaScript 專家介紹了頁面代碼加載的*佳方法和編程技巧,來幫助你編寫更為高效和快速的代碼。你還會了解到構(gòu)建和部署文件到生產(chǎn)環(huán)境的*佳實踐,以及有助于定位線上問題的工具。
高性能JavaScript 目錄
第1章:加載和執(zhí)行 1
1.1 腳本位置 2
1.2 組織腳本 4
1.3 無阻塞的腳本 5
1.3.1 延遲的腳本 5
1.3.2 動態(tài)腳本元素 6
1.3.3 xmlhttprequest腳本注入 9
1.3.4 推薦的無阻塞模式 10
1.4 小結(jié) 14
第2章:數(shù)據(jù)訪問 15
2.1 管理作用域 16
2.1.1 作用域鏈和標(biāo)識符解析 16
2.1.2 標(biāo)識符解析的性能 19
2.1.3 改變作用域鏈 21
2.1.4 動態(tài)作用域 24
2.1.5 閉包,作用域和內(nèi)存 24
2.2 對象成員 27
2.2.1 原型 27
2.2.2 原型鏈 29
2.2.3 嵌套成員 30
2.2.4 緩存對象成員值 31
2.3 小結(jié) 33
第3章:dom編程 35
3.1 瀏覽器中的dom 35
3.1.1 天生就慢 36
3.2 dom訪問與修改 36
3.2.1 innerhtml對比dom方法 37
3.2.2 節(jié)點克隆 41
3.2.3 html集合 42
3.2.4 遍歷dom 46
3.3 重繪與重排 50
3.3.1 重排何時發(fā)生? 51
3.3.2 渲染樹變化的排隊與刷新 51
3.3.3 *小化重繪和重排 52
3.3.4 緩存布局信息 56
3.3.5 讓元素脫離動畫流 56
3.3.6 ie和:hover 57
3.4 事件委托 57
3.5 小結(jié) 59
第4章:算法和流程控制 61
4.1 循環(huán) 61
4.1.1 循環(huán)的類型 61
4.1.2 循環(huán)性能 63
4.1.3 基于函數(shù)的迭代 67
4.2 條件語句 68
4.2.1 if-else對比switch 68
4.2.2 優(yōu)化if-else 70
4.2.3 查找表 72
4.3 遞歸 73
4.3.1 調(diào)用棧限制 74
4.3.2 遞歸模式 75
4.3.3 迭代 76
4.3.4 memoization 77
4.4 小結(jié) 79
第5章:字符串和正則表達式 81
5.1 字符串連接 81
5.1.1 加(+)和加等于(+=)操作符 82
5.1.2 數(shù)組項連接 84
5.1.3 string.prototype.concat 86
5.2 正則表達式優(yōu)化 87
5.2.1 正則表達式工作原理 88
5.2.2 理解回溯 89
5.2.3 回溯失控 91
5.2.4 基準(zhǔn)測試的說明 96
5.2.5 更多提高正則表達式效率的方法 96
5.2.6 何時不使用正則表達式 99
5.3 去除字符串首尾空白 99
5.3.1 使用正則表達式去首尾空白 99
5.3.2 不使用正則表達式去除字符串首尾空白 102
5.3.3 混合解決方案 103
5.4 小結(jié) 104
第6章:快速響應(yīng)的用戶界面 107
6.1 瀏覽器ui線程 107
6.1.1 瀏覽器限制 109
6.1.2 多久才算“太久”? 110
6.2 使用定時器讓出時間片段 111
6.2.1 定時器基礎(chǔ) 112
6.2.2 定時器的精度 114
6.2.3 使用定時器處理數(shù)組 114
6.2.4 分割任務(wù) 116
6.2.5 記錄代碼運行時間 118
6.2.6 定時器與性能 119
6.3 web workers 120
6.3.1 worker運行環(huán)境 120
6.3.2 與worker通信 121
6.3.3 加載外部文件 122
6.3.4 實際應(yīng)用 122
6.4 小結(jié) 124
第7章:ajax 125
7.1 數(shù)據(jù)傳輸 125
7.1.1 請求數(shù)據(jù) 125
7.1.2 發(fā)送數(shù)據(jù) 131
7.2 數(shù)據(jù)格式 134
7.2.1 xml 134
7.2.2 json 137
7.2.3 html 141
7.2.4 自定義格式 142
7.2.5 數(shù)據(jù)格式總結(jié) 144
7.3 ajax性能指南 145
7.3.1 緩存數(shù)據(jù) 145
7.3.2 了解ajax類庫的局限 148
7.4 小結(jié) 149
第8章:編程實踐 151
8.1 避免雙重求值(double evaluation) 151
8.2 使用object/array直接量 153
8.3 不要重復(fù)工作 154
8.3.1 延遲加載 154
8.3.2 條件預(yù)加載 156
8.4 使用速度快的部分 156
8.4.1 位操作 156
8.4.2 原生方法 159
8.5 小結(jié) 161
第9章:構(gòu)建并部署高性能javascript應(yīng)用 163
9.1 apache ant 163
9.2 合并多個javascript文件 165
9.3 預(yù)處理javascript文件 166
9.4 javascript壓縮 168
9.5 構(gòu)建時處理對比運行時處理 170
9.6 javascript的http壓縮 170
9.7 緩存javascript文件 171
9.8 處理緩存問題 172
9.9 使用內(nèi)容分發(fā)網(wǎng)絡(luò)(cdn) 173
9.10 部署javascript資源 173
9.11 敏捷javascript構(gòu)建過程 174
9.12 小結(jié) 175
第10章:工具 177
10.1 javascript性能分析 178
10.2 yui profiler 179
10.3 匿名函數(shù) 182
10.4 firebug 183
10.4.1 控制臺面板分析工具 183
10.4.2 console api 184
10.4.3 網(wǎng)絡(luò)面板 185
10.5 ie開發(fā)人員工具 186
10.6 safari web檢查器(web inspector) 188
10.6.1 分析面板 189
10.6.2 資源面板 191
10.7 chrome開發(fā)人員工具 192
10.8 腳本阻塞 193
10.9 page speed 194
10.10 fiddler 196
10.11 yslow 198
10.12 dynatrace ajax edition 199
10.13 小結(jié) 202
索引 203
高性能JavaScript 作者簡介
丁琛,樂豚聯(lián)合創(chuàng)始人及CEO,曾在阿里巴巴負責(zé)支付寶,擔(dān)任產(chǎn)品前端開發(fā)工作,業(yè)界著名的前端開發(fā)工程師。
- >
推拿
- >
隨園食單
- >
我從未如此眷戀人間
- >
苦雨齋序跋文-周作人自編集
- >
新文學(xué)天穹兩巨星--魯迅與胡適/紅燭學(xué)術(shù)叢書(紅燭學(xué)術(shù)叢書)
- >
煙與鏡
- >
龍榆生:詞曲概論/大家小書
- >
巴金-再思錄