高性能JavaScript是JavaScript语言领域的一本经典教材,由雅虎首页开发者尼古拉斯·泽卡斯编著。全书从性能角度分析JavaScript,不求面面俱到,但求字字如金。重点讨论了JavaScript的各个方面,内容涵盖运行时间、下载、dom操作、页面生存周期等,另外作者尝试着从多个方面综合分析导致JavaScript性能低下的原因,并给出适合的解决方案,帮助我们改善Web应用的品质,适用于有一定基础的JavaScript人员学习。
内容介绍
如果你使用 JavaScript 构建交互丰富的 Web 应用,那么 JavaScript 代码可能是造成你的Web应用速度变慢的主要原因。本书揭示的技术和策略能帮助你在开发过程中消除性能瓶颈。你将会了解如何提升各方面的性能,包括代码的加载、运行、DOM 交互、页面生存周期等。雅虎的前端工程师 Nicholas C. Zakas 和其他五位 JavaScript 专家介绍了页面代码加载的优佳方法和编程技巧,来帮助你编写更为高效和快速的代码。你还会了解到构建和部署文件到生产环境的优佳实践,以及有助于定位线上问题的工具。
高性能javascript章节目录
前言I
第1章:加载和执行1
1.1脚本位置2
1.2组织脚本4
1.3阻塞的脚本5
1.3.1延迟的脚本5
1.3.2动态脚本元素6
1.3.3XMLHttpRequest脚本注入9
1.3.4推荐的阻塞模式10
1.4小结14
第2章:数据访问15
2.1管理作用域16
2.1.1作用域链和标识符解析16
2.1.2标识符解析的性能19
2.1.3改变作用域链21
2.1.4动态作用域24
2.1.5闭包,作用域和内存24
2.2对象成员27
2.2.1原型27
2.2.2原型链29
2.2.3嵌套成员30
2.2.4缓存对象成员值31
2.3小结33
第3章:DOM编程35
3.1浏览器中的DOM35
3.1.1天生就慢36
3.2DOM访问与修改36
3.2.1innerHTML对比DOM方法37
3.2.2节点克隆41
3.2.3HTML集合42
3.2.4遍历DOM46
3.3重绘与重排50
3.3.1重排何时发生?51
3.3.2渲染树变化的排队与刷新51
3.3.3最小化重绘和重排52
3.3.4缓存布局信息56
3.3.5让元素脱离动画流56
3.3.6IE和:hover57
3.4事件委托57
3.5小结59
第4章:算法和流程控制61
4.1循环61
4.1.1循环的类型61
4.1.2循环性能63
4.1.3基于函数的迭代67
4.2条件语句68
4.2.1if-else对比switch68
4.2.2优化if-else70
4.2.3查找表72
4.3递归73
4.3.1调用栈限制74
4.3.2递归模式75
4.3.3迭代76
4.3.4Memoization77
4.4小结79
第5章:字符串和正则表达式81
5.1字符串连接81
5.1.1加(+)和加等于(+=)操作符82
5.1.2数组项连接84
5.1.3String.prototype.concat86
5.2正则表达式优化87
5.2.1正则表达式工作原理88
5.2.2理解回溯89
5.2.3回溯失控91
5.2.4基准测试的说明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小结104
第6章:快速响应的用户界面107
6.1浏览器UI线程107
6.1.1浏览器限制109
6.1.2多久才算“太久”?110
6.2使用定时器让出时间片段111
6.2.1定时器基础112
6.2.2定时器的精度114
6.2.3使用定时器处理数组114
6.2.4分割任务116
6.2.5记录代码运行时间118
6.2.6定时器与性能119
6.3Web Workers120
6.3.1Worker运行环境120
6.3.2与Worker通信121
6.3.3加载外部文件122
6.3.4实际应用122
6.4小结124
第7章:Ajax125
7.1数据传输125
7.1.1请求数据125
7.1.2发送数据131
7.2数据格式134
7.2.1XML134
7.2.2JSON137
7.2.3HTML141
7.2.4自定义格式142
7.2.5数据格式总结144
7.3Ajax性能指南145
7.3.1缓存数据145
7.3.2了解Ajax类库的局限148
7.4小结149
第8章:编程实践151
8.1避免双重求值(Double Evaluation)151
8.2使用Object/Array直接量153
8.3不要重复工作154
8.3.1延迟加载154
8.3.2条件预加载156
8.4使用速度快的部分156
8.4.1位操作156
8.4.2原生方法159
8.5小结161
第9章:构建并部署高性能JavaScript应用163
9.1Apache Ant163
9.2合并多个JavaScript文件165
9.3预处理JavaScript文件166
9.4JavaScript压缩168
9.5构建时处理对比运行时处理170
9.6JavaScript的HTTP压缩170
9.7缓存JavaScript文件171
9.8处理缓存问题172
9.9使用内容分发网络(CDN)173
9.10部署JavaScript资源173
9.11敏捷JavaScript构建过程174
9.12小结175
第10章:工具177
10.1JavaScript性能分析178
10.2YUI Profiler179
10.3匿名函数182
10.4Firebug183
10.4.1控制台面板分析工具183
10.4.2Console API184
10.4.3网络面板185
10.5IE开发人员工具186
10.6Safari Web检查器(Web Inspector)188
10.6.1分析面板189
10.6.2资源面板191
10.7Chrome开发人员工具192
10.8脚本阻塞193
10.9Page Speed194
10.10Fiddler196
10.11YSlow198
10.12dynaTrace Ajax Edition199
10.13小结202
索引203
使用说明
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
发表评论
0条评论软件排行榜
热门推荐
- 有柿电脑版 v11.6.084.1M / 简体中文
- 京东读书电脑版 v1.13.4官方版1.98M / 简体中文
- 得间免费小说电脑版 v5.2.9.173.58M / 简体中文
- 潇湘书院电脑版 v2.3.11.888官方版49.65M / 简体中文
- 数据挖掘导论 官方版61.61M / 简体中文
- 未公开的Oracle数据库秘密 迪贝斯pdf扫描版34.69M / 简体中文
- PHP语言精粹电子书 pdf扫描版25.72M / 简体中文
- linux常用命令大全 chm版1.48M / 简体中文
- docker入门实战 pdf完整版1.38M / 简体中文
- Scala程序设计第二版 pdf高清完整版15.83M / 简体中文