零、前言

JavaScript 是一种快速发展的语言,每年都会添加新的特性。 本书旨在通过使用 JavaScript 构建广泛的应用来让您亲身体验。 这将帮助您使用 JavaScript 建立一个坚实的基础,这将帮助您适应它的新特性和即将到来的特性,以及学习其他现代框架和库。

这本书的内容

第一章建立一个待办事项列表,从一个简单的 DOM 操作 JavaScript 和事件监听器开始,这将给你一个很好的想法,JavaScript 如何与网站中的 HTML 工作。 您将设置基本的开发环境并构建您的第一个待办事项列表应用。

第 2 章Building a Meme Creator,帮助您构建一个有趣的应用,Meme Creator。 通过这些,你将理解 canvas 元素,使用 ES6 类,并使用 CSS3 flexbox 来介绍布局。 本章还介绍了 Webpack 以及使用它建立自己的自动化开发环境。

第 3 章事件注册应用,重点是开发一个响应式事件注册表单,具有适当的表单验证,允许用户注册您即将到来的事件,并通过图表直观显示注册数据。 本章帮助您理解执行 AJAX 请求的不同方法以及如何处理动态数据。

第四章基于 WebRTC 的实时视频通话应用,使用 WebRTC 在 JavaScript 中构建一个实时视频通话聊天应用。 本章重点介绍如何在浏览器中使用强大的 web api。

第 5 章开发天气小部件,帮助您使用 HTML5 自定义元素为应用构建天气小部件。 您将了解 web 组件及其在 web 应用开发中的重要性。

第 6 章build a Blog with React,讨论 React,一个由 Facebook 创建的用 JavaScript 构建用户界面的库。 然后,您将使用 React 和create-react-appreact-router等工具创建一个博客。

第七章Redux,将深入探讨如何使您的博客更易于维护和扩展,以及改进的用户体验,使用 Redux 跨 React 组件管理数据。

你需要什么来写这本书

为了获得在本书中构建项目的最佳体验,您将需要以下内容:

  • 至少有 4gb 内存的 Windows 或 Linux 机器,或者是 Mac 电脑
  • iPhone 或 Android 移动设备
  • 快速的互联网连接

这本书是给谁的

本书的目标读者是具备 HTML、CSS 和 JavaScript 基础知识的 web 开发人员,他们希望提高自己的技能并构建强大的 web 应用。

具备 JavaScript 或其他编程语言的基础知识将会很有帮助。 然而,如果你对 JavaScript 和编程是完全陌生的,那么你可以阅读以下简单的教程之一,这将帮助你开始 JavaScript 的基础,然后你将准备阅读这本书在任何时候:

约定

在本书中,您将发现许多文本样式,它们可以区分不同类型的信息。 下面是这些风格的一些例子和它们的含义的解释。 码字在文本、数据库表名、文件夹名称,文件名,文件扩展名,路径名,虚拟的 url,用户输入,和 Twitter 处理显示如下:“在我们的index.html文件,<body>元素分为一个导航栏,div包含网站的内容。”

代码块的设置如下:

loadTasks() {
  let tasksHtml = this.tasks.reduce((html, task, index) => html +=  
  this.generateTaskHtml(task, index), '');
  document.getElementById('taskList').innerHTML = tasksHtml;
 }

当我们希望您注意代码块的特定部分时,相关的行或项以粗体显示:

function mapStateToProps() {
  return {
    // No states needed by App Component
  };
}

命令行输入或输出如下所示:

npm install -g http-server

新词语重要词语以粗体显示。

例如,你在屏幕上看到的单词,在菜单或对话框中,会出现这样的文本:“点击主页上的阅读更多按钮,将立即带你到发布详情页面。”

Warnings or important notes appear like this. Tips and tricks appear like this.

读者的反馈

我们欢迎读者的反馈。 让我们知道你对这本书的看法——喜欢或不喜欢。 读者反馈对我们来说很重要,因为它可以帮助我们开发出你真正能够从中获得最大收益的游戏。 要向我们发送一般的反馈,只需发送电子邮件feedback@packtpub.com,并在邮件的主题中提及书名。 如果你对某一主题有专长,并且你对写作或投稿感兴趣,请参见我们的作者指南www.packtpub.com/authors

客户支持

现在,您是包书的骄傲所有者,我们有一些东西来帮助您从您的购买中获得最多。

下载示例代码

你可以从你的账户http://www.packtpub.com下载这本书的示例代码文件。 如果您在其他地方购买了这本书,您可以访问http://www.packtpub.com/support并注册,直接将文件通过电子邮件发送给您。 您可以按照以下步骤下载代码文件:

  1. 使用您的电子邮件地址和密码登录或注册我们的网站。
  2. 将鼠标指针悬停在顶部的 SUPPORT 选项卡上。
  3. 点击代码下载和勘误表。
  4. 在“搜索”框中输入该书的名称。
  5. 选择要下载代码文件的书。
  6. 从下拉菜单中选择您购买这本书的地方。
  7. 单击代码下载。

文件下载后,请确保使用最新版本的:

  • WinRAR / 7-Zip for Windows
  • Zipeg / iZip / unarx 适用于 Mac
  • 7-Zip / PeaZip for Linux

本书的代码包也托管在 GitHub 上的https://github.com/PacktPublishing/JavaScript-by-Example。 我们也有来自丰富的图书和视频目录的其他代码包,可以在https://github.com/PacktPublishing/上找到。 检查出来!

勘误表

尽管我们已经尽一切努力确保内容的准确性,但错误还是会发生。 如果您在我们的任何一本书中发现了错误——也许是文本或代码中的错误——如果您能向我们报告,我们将非常感激。 通过这样做,您可以避免其他读者感到沮丧,并帮助我们改进本书的后续版本。 如果您发现任何勘误表,请访问http://www.packtpub.com/submit-errata,选择您的书,点击勘误表提交表格链接,并输入勘误表的详细信息。 一旦您的勘误表得到验证,您的提交将被接受,勘误表将被上传到我们的网站,或添加到该标题勘误表部分的任何现有勘误表列表中。 要查看之前提交的勘误表,请到https://www.packtpub.com/books/content/support并在搜索栏中输入书名。 所需信息将出现在勘误表部分。

盗版

在互联网上盗版有版权的材料是所有媒体都存在的问题。 在 Packt,我们非常重视版权和许可的保护。 如果您在互联网上发现任何形式的我们作品的非法拷贝,请立即提供我们的地址或网站名称,以便我们采取补救措施。 请在copyright@packtpub.com联系我们,并提供疑似盗版资料的链接。 我们感谢您的帮助,以保护我们的作者和我们的能力给您带来有价值的内容。

问题

如果你对这本书的任何方面有问题,你可以通过questions@packtpub.com联系我们,我们会尽力解决这个问题。