JavaScript专家编程.pdf

JavaScript专家编程.pdf
 

书籍描述

内容简介
JavaScript是一种脚本语言,已广泛用于Web应用开发。本书就是一本引导读者深入学习JavaScript,并能成为JavaScript专家的书。
全书共10章,分别介绍了对象和原型、函数、闭包、术语、异步编程、JavaScript的IRL、编程风格、工作流程、代码质量、提高可测试性等内容。通过一系列内容和示例的讲解,本书进一步剖析了JavaScript的内部机制,为读者呈现更加全面的JavaScript。
本书适合有一定经验的JavaScript开发人员阅读,能够帮助读者更好地认识和运用JavaScript语言。

编辑推荐
本书是JavaScript深入学习的权威指南。难得的JavaScript中级到高级的作品,深入探讨语言机制和底层工作原理。
本书帮助读者深入理解JavaScript,构建更好的应用程序。
作者挑选了JavaScript语言重要的内部工作原理,设计成一张“藏宝图”,你可以跟着这张藏宝图找到最后的宝藏。通过学习本书,挖掘JavaScript中的这些概念,最后你会对JavaScript有更深入的了解。

媒体推荐
本书是了解JavaScript的权威指南,帮助你在学习现代应用程序的同时,掌握JavaScript的内部工作机制。书中介绍了JavaScript这门强大语言中不容易理解的知识。通过本书,真正理解其的工作原理之后,你的JavaScript编程技能将会得到提升。

你将会学到JavaScript的核心基础,包括深入理解函数、作用域、闭包以及面向对象。作者清晰地解释了闭包、事件、异步代码的运行原理,介绍了写出整洁JavaScript代码的规范习惯和相关的概念,阐述了ECMAScript 6的变化。同时,书中还介绍了一些用于现代工作流程的工具,可以让程序开发变得更快、更有趣,并产生更多价值。你会对如何衡量代码的质量以及如何写出可测试的JavaScript代码有更好的理解,最后你还能看到JavaScript在真实世界中的应用,比如JavaScript代码驱动的机器人。

JavaScript是Web中最为强大的语言之一,而且还在变的更加强大。这本书将带你体验计划、编码、测试、代码分析以及最终发布程序的整个过程,在了解更多框架并获得更多提升之后,你才能够成为一名JavaScript专家。拿起本书,踏上这段旅程吧!

作者简介
Mark Daggett是一名具有开拓精神的新媒体艺术家,是一名专业的开发人员,是在堪萨斯城的一个社会创新实验室Humansized公司的CEO。他是Pledgie.com(一个流行的众筹平台)的合伙创始人,是艺术学的兼职教授。他曾在用户体验和用户交互设计、概念开发以及战略领域工作了近20年,担任过各种启动企业、咨询以及顾问的角色。他是洛克菲勒新媒体奖提名人,并曾经被《纽约时报》(New York Times)、《世界报》(Le Monde)、《连线》杂志(WIRED Magazine)以及《表面》(Surface Magazine)杂志等报道过。Mark的个人网站是http://www. markdaggett.com,Twitter账号是@ heavysixer。

目录
目录

第1章 对象和原型 1
1.1 鸟瞰JavaScript 1
脚本设计 2
1.2 对象概述 3
1.2.1 对象化 3
1.2.2 原型编程 20
1.3 小结 29
第2章 函数 30
2.1 JavaScript中的代码块 30
2.2 小结 44
第3章 了解闭包 45
3.1 作用域的真相 45
3.1.1 理解this关键字 46
3.1.2 块级作用域 48
3.2 第一个闭包程序 49
3.3 为什么要用闭包 50
对象工厂 50
3.4 小结 53
第4章 术语和俚语 54
4.1 Jargon.prototype = new Slang() 54
什么是编程术语? 55
4.2 强转 55
4.2.1 转为String 56
4.2.2 转为数字 56
4.2.3 强转的陷阱 57
4.3 逻辑运算符 61
4.3.1 逻辑与(&&) 61
4.3.2 逻辑或(||) 62
4.3.3 逻辑非(!) 62
4.4 位变换 65
4.4.1 按位与(&) 65
4.4.2 按位或(|) 67
4.4.3 按位异或(^) 68
4.4.4 按位非(~) 69
4.4.5 位移操作(<<,>>,>>>) 69
4.5 不易读代码 71
4.5.1 暗中的eval 71
4.5.2 各种进制 71
4.5.3 使用Unicode编码的变量 72
4.5.4 真正的WAT在这里 72
4.6 小结 73
4.7 补充参考资料 74
第5章 异步生活 75
5.1 理解JavaScript中的并发 75
并发 75
5.2 理解JavaScript的事件循环 77
5.2.1 运行至完成 77
5.2.2 事件触发的设计 77
5.2.3 事件循环的内部 77
5.3 回调 79
5.3.1 感知性能 80
5.3.2 连续传递风格 81
5.3.3 回调地狱 82
5.4 Promise:从未来返回 83
使用Promise 84
5.5 生成器和协程 85
5.5.1 生成器 86
5.5.2 协程的约定 88
5.5.3可持续生成器 89
5.6 Web Workers 91
5.6.1 并发 91
5.6.2 知道什么时候做一个工头 91
5.6.3 雇用worker 92
5.7 小结 100
其他资源 100
第6章 JavaScript的IRL 102
6.1 硬件崇拜者日记 102
6.1.1 消防软管 102
6.1.2 每个人都可以玩的硬件 103
6.1.3 了解物理硬件 103
6.2 物理计算 104
物联网 105
6.3 为什么要使用JavaScript 105
6.3.1 搭建桥梁 106
6.3.2 响应式编程范式 106
6.4 NodeBots:快速,廉价和伺服控制 107
6.4.1 REPL 108
6.4.2 为何要多此一举 108
6.4.3 前提条件 109
6.4.4 Arduino IDE 110
6.4.5 Node串行端口 112
6.4.6 Firmata 115
6.4.7 Johnny-Five 118
6.5 Fauxbots 123
6.6 其他资源 123
第7章 风格 124
7.1 什么是风格 124
7.2 什么是编程风格 125
7.2.1 一致性 125
7.2.2 表达能力 125
7.2.3 简洁 125
7.2.4 约束性 126
7.3 JavaScript风格指南 126
7.3.1 视觉清晰度规则 126
7.3.2 计算效率规则 134
7.4 施行代码风格 139
7.4.1 Beautifiers 139
7.4.2 通过IDE执行 140
7.5 小结 142
第8章 工作流程 144
8.1 不要铲雪 144
8.2 什么是工作流程 144
8.3 合理的JavaScript开发流程 145
8.4 工具的选择 145
8.4.1 订购工具 146
8.4.2 依赖关系管理 148
8.4.3 保护升级路径 149
8.5 引导程序 150
8.6 开发 153
CoffeeScript示例 154
8.7 测试 157
8.7.1 如何测试 157
8.7.2 Karma 157
8.7.3 PhantomJS 159
8.7.4 测试什么 160
8.8 构建 163
8.8.1 编译 163
8.8.2 分析 163
8.8.3 拼接 163
8.8.4 优化 163
8.8.5 测试 164
8.8.6 通知 164
8.9 支持 164
8.9.1 JavaScript中的错误报告 165
8.9.2 源码映射 165
8.10 小结 165
第9章 代码质量 167
9.1 定义代码质量 167
9.1.1 主观质量 168
9.1.2 客观质量 168
9.2 如何度量质量 168
9.3 为什么要度量代码质量 169
9.4 度量JavaScript代码质量 170
静态代码分析 170
9.5 小结 188
第10章 提高可测试性 189
10.1 为什么测试无法测试 189
10.1.1 测试谬论 190
10.1.2 确认偏见 193
10.2 找到基线 195
10.2.1 语句覆盖 196
10.2.2 函数覆盖 197
10.2.3 分支覆盖 197
10.2.4 Istanbul 198
10.2.5 覆盖率偏见 199
10.3 偏见消除测试 200
10.3.1 模糊测试 200
10.3.2 JSCheck 202
10.3.3 自动测试 206
10.4 小结 207

购买书籍

当当网购书 京东购书 卓越购书

PDF电子书下载地址

相关书籍

搜索更多