零、前言
精通 JavaScript 高性能 在这本书中,我们以一种帮助 JavaScript 开发人员的方式介绍了 JavaScript 性能,无论他们是新手还是经验丰富的老手。 这本书涵盖了常见的性能瓶颈,如何查找代码中的性能问题,以及如何轻松地纠正它们。
我们还回顾了优化 JavaScript 代码的现代方法,不仅依靠 JavaScript 知识,还使用工具帮助我们优化代码。 这些工具包括 Gulp 和 Node.js,它们可以帮助创建高性能的构建,以及 Jasmine,一个 JavaScript 单元测试框架,可以帮助发现 JavaScript 中的应用流问题。 我们还使用苹果 Xcode 的 HTML 和 JavaScript 调试工具调试一个混合应用。
这本书的内容
第一章,速度的必要性,说明了需要更快的 JavaScript,讨论为什么 JavaScript 代码通常是缓慢的,并显示类型的代码编辑器,它可以帮助我们更快的 JavaScript,写没有改变我们的编码风格。
第二章,使用 JSLint 增加代码性能*,探索 JavaScript 的性能修复,并涵盖 JSLint,一个非常好的 JavaScript 验证和优化工具。
第 3 章,理解 JavaScript Build Systems,教你 JavaScript Build Systems 及其在 JavaScript 性能测试和部署方面的优势。
第 4 章,检测性能,涵盖了谷歌的开发工具选项,并包含了如何使用 Web Inspector 来提高我们的 JavaScript 代码性能的回顾。
第 5 章、运算符、循环和计时器解释了 JavaScript 语言中的运算符、循环和计时器,并展示了它们对性能的影响。
第 6 章、构造器、原型和数组,介绍了 JavaScript 语言中的构造器、原型和数组,并展示了它们对性能的影响。
第 7 章,不使用 DOM,包含了 DOM 与编写高性能 JavaScript 的关系的回顾,并展示了如何优化我们的 JavaScript 来渲染我们的 web 应用明显更快。 我们还会查看 JavaScript 动画,并测试现代 CSS3 动画的性能。
第 8 章、Web Workers and Promises展示了 Web Workers 和 promise。 本章还向您展示了如何使用它们,包括它们的局限性。
第 9 章、优化 JavaScript for iOS Hybrid Apps介绍了针对移动 iOS 网页应用(也称为混合应用)的 JavaScript 优化。 此外,我们还将了解 Apple Web Inspector,并了解如何将其用于 iOS 开发。
第 10 章,应用性能测试,介绍了 Jasmine,一个 JavaScript 测试框架,允许我们对 JavaScript 代码进行单元测试。
你写这本书需要什么
对于这本书,您将需要一个基本的了解 JavaScript,如何编写 JavaScript 函数和变量,如何使用基本的 web 技术,例如 HTML 和 CSS,以及一些基本的调试技能使用 web Inspector 如 Chrome 开发工具或 Firebug,等等。
你将需要一个文本编辑器,最好是用于 HTML 和 JavaScript 编码; 第一章,the Need for Speed。 选择编辑器和您所使用的系统的管理员权限由您自己决定,这也取决于您的预算。 此外,第 9 章,优化 JavaScript for iOS Hybrid Apps,严格涵盖了 iOS 开发中的 JavaScript; 为此,你需要一份 Xcode 和一个基于英特尔的 Mac。如果你没有这些,你仍然可以阅读,但理想情况下,大部分工作是在 Mac 上完成的。
这本书是给谁的
本书是为中级 JavaScript 开发人员编写的。 如果您对 JavaScript 单元测试和编写自己的框架有经验,并且能够理解 JavaScript 中基于实例和基于静态的区别,那么这本书可能不适合您。 此外,如果您是 javascript 新手,比如“我如何使用函数?” -我建议你也找一本初学者的 JavaScript 书。
然而,如果你已经成 JavaScript,但新节点样式的性能测试、繁重或吞咽项目部署,在 JavaScript 单元测试,或者如果你想知道更多关于如何编写 JavaScript 更快,或者如果你只是想阻止代码库落后没有重写你的编码风格, 你读对了书。
会议
在这本书中,你会发现许多文本的风格,以区分不同类型的信息。 下面是这些风格的一些例子,以及对它们含义的解释。
文本代码、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 url、用户输入和 Twitter 句柄如下所示:“为了解决这个问题,现代浏览器已经实现了新的控制台功能,称为console.time
和console.timeEnd
。”
代码块的设置如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Jasmine Spec Runner v2.1.3</title>
新词语、重要词语以粗体显示。 你在屏幕上看到的文字,例如在菜单或对话框中,会出现这样的文本:“点击Next按钮将你移动到下一个屏幕。”
注释
警告或重要注释出现在这样的框中。
提示
提示和技巧是这样的。
读者反馈
我们欢迎读者的反馈。 让我们知道你对这本书的看法——你喜欢或不喜欢的东西。 读者反馈对于我们开发游戏非常重要。
要向我们发送一般的反馈,只需发送电子邮件到<[feedback@packtpub.com](mailto:feedback@packtpub.com)>
,并通过你的信息的主题提到书的标题。
如果你对某一主题有专长,并且你对写书或投稿感兴趣,请参阅我们的作者指南www.packtpub.com/authors。
客户支持
现在,您是包书的骄傲所有者,我们有一些东西来帮助您从您的购买中获得最多。
下载示例代码
您可以从您的账户http://www.packtpub.com下载您购买的所有 pack 书籍的示例代码文件。 如果您在其他地方购买了这本书,您可以访问http://www.packtpub.com/support并注册,直接将文件通过电子邮件发送给您。
下载本书彩色图片
我们还提供了一个 PDF 文件,里面有本书中使用的屏幕截图/图表的彩色图像。 彩色图像将帮助您更好地理解输出中的变化。 您可以从:https://www.packtpub.com/sites/default/files/downloads/7296OS_ColorImages.pdf下载该文件。
勘误表
尽管我们已经尽一切努力确保内容的准确性,但错误还是会发生。 如果您在我们的任何一本书中发现了错误——也许是文本或代码中的错误——我们将非常感谢您向我们报告。 通过这样做,您可以避免其他读者感到沮丧,并帮助我们改进本书的后续版本。 如果你发现任何错误,请报告通过访问 http://www.packtpub.com/submit-errata,选择你的书,点击勘误表提交链接,并输入你的勘误表的细节。 一旦您的勘误表得到验证,您的提交将被接受,勘误表将被上传到我们的网站,或添加到任何现有勘误表的列表中,在该标题的勘误表部分。 任何现有的勘误表都可以在http://www.packtpub.com/support中选择您的标题查看。
**## 盗版
互联网上的版权材料盗版是所有媒体都存在的问题。 在 Packt,我们非常重视版权和许可的保护。 如果您在互联网上发现任何形式的我们作品的非法拷贝,请立即提供我们的位置地址或网站名称,以便我们采取补救措施。
请在<[copyright@packtpub.com](mailto:copyright@packtpub.com)>
联系我们,并提供疑似盗版资料的链接。
我们感谢您在保护我们的作者方面的帮助,以及我们为您带来有价值的内容的能力。
问题
如果您对这本书的任何方面有问题,可以通过<[questions@packtpub.com](mailto:questions@packtpub.com)>
联系我们,我们将尽力解决它。***
版权属于:月萌API www.moonapi.com,转载请注明出处