高性能JavaScript
全新正版 极速发货
¥
42.32
4.8折
¥
89
全新
仅1件
作者(美)泽卡斯|责编:徐津平|译者:丁琛
出版社电子工业
ISBN9787121266775
出版时间2015-08
装帧平装
开本其他
定价89元
货号30989546
上书时间2024-06-06
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
丁琛,乐豚联合创始人及CEO,曾在阿里巴巴负责支付宝,担任产品前端开发工作,业界著名的前端开发工程师。
目录
目录
Contents
前言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
内容摘要
如果你使用JavaScript构建交互丰富的Web应用,那么JavaScript代码可能是造成你的Web应用速度变慢的主要原因。本书揭示的技术和策略能帮助你在开发过程中消除性能瓶颈。你将会了解如何提升各方面的性能,包括代码的加载、运行、DOM交互、页面生存周期等。雅虎的前端工程师NicholasC.Zakas和其他五位JavaScript专家介绍了页面代码加载的最佳方法和编程技巧,来帮助你编写更为高效和快速的代码。你还会了解到构建和部署文件到生产环境的最佳实践,以及有助于定位线上问题的工具。
精彩内容
译者序这是一本关于JavaScript性能的书。
在Web应用日趋丰富的今天,越来越多的JavaScript被运用在我们的网页中。随着用户体验被日益重视,前端性能对用户体验的影响开始备受关注,而引起性能问题的因素相对复杂,因此它很难得到全面的解决。这本书是一个契机,它尝试着从多个方面综合分析导致性能问题的原因,并给出适合的解决方案,帮助我们改善Web应用的品质。
这本书页数不多,但它承载着JavaScript性能方面最为宝贵的经验。不仅从语言特性、数据结构、浏览器机理、网络传输等层面分析导致性能问题的原因,还介绍了多种工具来帮助我们提升开发过程和部署环节的工作效率。
本书作者NicholasC.Zakas是一位经验丰富的前端专家,他的许多研究(www.nczonline.net)对前端业界的贡献让我们受益匪浅。本书的另外五位特约作者均为各自领域的专家,他们的专业技能和知识的融入使得本书内容更为充实,更具实用价值。
特别感谢赵泽欣(小马),他为审阅译文花了大量的时间和精力,他的耐心和细致让我十分敬佩。感谢朱宁(白鸦)和周筠老师的引荐让我得以参与本书的翻译。还要感谢博文视点的编辑们在本书翻译过程中给予的极大理解和帮助。
我们在本书翻译过程中力求保持行文流畅,但纰漏在所难免,恳请广大读者批评指正。关于本书的任何意见或想法,欢迎发送邮件至hpj.feedback@gmail.com。
最后,希望本书能帮助业界同仁打造出性能更为卓越的Web产品。
丁琛
— 没有更多了 —
以下为对购买帮助不大的评价