Summary Introduction chapter1 介绍 chapter2 掌握基本的写法 chapter6 操作HTML和XML文档 -DOM(Document Object Model)- 6.1 掌握DOM的基础 6.1.1 操作标记语言的标准的结构「DOM」 6.1.2 文档树和节点 6.2 客户端JavaScript的必备知识 6.2.1 获取元素节点 6.2.2 往来于文档树间 -节点遍历- 6.2.3 触发事件并执行处理 -事件驱动模型- 6.3 获取/设定属性值和文本 6.3.1 大多数属性都可以使用「元素节点的同名的属性」来访问 6.3.2 获取没有特别指定的属性 6.3.3 获取/设定文本 6.4 访问表单元素 6.4.1 获取输入框/选择框的值 6.4.2 获取复选框的值 6.4.3 获取单选框的值 6.4.4 设定单选框/复选框的值 6.4.5 获取可以多选的列表框的值 6.4.6 获取上传的文件信息 6.5 添加/替换/删除节点 6.5.1 怎样正确使用innerHTML属性 6.5.2 新建节点 6.5.3 替换/删除现有的节点 6.5.4 循环处理HTMLCollection/NodeList时的注意点 6.6 从JavaScript中操作样式表 6.6.1 访问内联样式 -style属性- 6.6.2 使用外部的样式表 -className属性- 6.6.3 更简单地操作样式类 -classList属性- 6.7 更高级的事件处理 6.7.1 删除事件监听器/事件处理程序 6.7.2 获取事件相关的信息 -事件对象- 6.7.3 取消事件处理 6.7.4 事件监听器/事件处理程序下的this关键字 chapter7 彻底钻研客户端JavaScript开发 7.1 浏览器对象中需要了解的基本功能 7.1.1 浏览器对象的层级结构 7.1.2 显示确认对话框 -confirm方法- 7.1.3 实现定时器功能 -setInterval/setTimeout方法 7.1.4 获取/操作显示页面的地址信息 -location对象- 7.1.5 按照历史记录前后移动页面 -history对象- 7.1.6 使JavaScript的操作留在浏览器的历史记录中 -pushState方法- 7.1.7 给应用实施跨浏览器策略 -navigator对象- 7.2 输出调试信息 -Console对象- 7.2.1 在控制台中输出日志 7.2.2 需要了解的方便的日志方法 7.3 保存用户数据 -Storage对象- 7.3.1 在本地存储中保存/获取数据 7.3.2 删除现有的数据 7.3.3 从本地存储中获取所有的数据 7.3.4 将对象保存到本地存储中/从本地存储中获取对象 7.3.5 监视本地存储的变更 7.4 联动服务器实现丰富的UI -Ajax- 7.4.1 将Ajax的Hello, World和PHP的Hello, World相比较 7.4.2 实现Ajax应用的基础 7.4.3 在Ajax应用中操作结构化数据 7.4.4 使客户端实现跨域通信 -JSONP- 7.4.5 根据跨文档通信的跨域通信 7.5 简单显示异步处理 -Promise对象- 7.5.1 掌握Promise对象的基础 7.5.2 连接异步处理 7.5.3 使多个异步处理并行 7.6 在后台运行JavaScript的代码 -Web Worker- 7.6.1 实现worker线程 7.6.2 启动worker线程 chapter8 实际开发中不可或缺的应用知识 8.1 单元测试 -Jasmine- 8.1.1 Jasmine的安装方法 8.1.2 测试的基础 8.1.3 执行测试套件 8.2 使用文档注释使代码的内容更容易理解 -JSDoc- 8.2.1 文档注释的描述规则 8.2.2 文档生成工具 -JSDoc- 8.3 使用构建工具自动化例行工作 8.3.1 使用Grunt压缩源代码 8.4 立刻想实际应用ECMAScript2015 -Babel- 8.4.1 手动转换代码 8.4.2 通过Grunt执行Babel 8.4.3 使用简单的解释器 8.5 书写易读的易于维护的代码 -编码规范- 8.5.1 JavaScript的主要编码规范 8.5.2 JavaScript style guide (MDN)的主要规范 8.5.3 Google标准的编程风格 索引 术语