第1章 深入理解javascript事件
1.1 事件的调度
1.1.1 现在还是将来运行
1.1.2 线程的阻塞
1.1.3 队列
1.2 异步函数的类型
1.2.1 异步的i/o函数
1.2.2 异步的计时函数
1.3 异步函数的编写
1.3.1 何时称函数为异步的
1.3.2 间或异步的函数
1.3.3 缓存型异步函数
1.3.4 异步递归与回调存储
1.3.5 返值与回调的混搭
1.4 异步错误的处理
1.4.1 回调内抛出的错误
1.4.2 未捕获异常的处理
1.4.3 抛出还是不抛出
1.5 嵌套式回调的解嵌套
.1.6 小结
第2章 分布式事件
2.1 pubsub模式
2.1.1 eventemitter对象
2.1.2 玩转自己的pubsub
2.1.3 同步性
2.2 事件化模型
2.2.1 模型事件的传播
2.2.2 事件循环与嵌套式变化
2.3 jquery自定义事件
2.4 小结
第3章 promise对象和deferred对象
3.1 promise极简史
3.2 生成promise对象
3.2.1 生成纯promise对象
3.2.2 jquery api中的promise对象
3.3 向回调传递数据
3.4 进度通知
3.5 promise对象的合并
3.6 管道连接未来
3.7 jquery与promises/a的对比
3.8 用promise对象代替回调函数
3.9 小结
第4章 async.js的工作流控制
4.1 异步工作流的次序问题
4.2 异步的数据收集方法
4.2.1 async.js的函数式写法
4.2.2 async.js的错误处理技术
4.3 async.js的任务组织技术
4.3.1 异步函数序列的运行
4.3.2 异步函数的并行运行
4.4 异步工作流的动态排队技术
4.4.1 深入理解队列
4.4.2 任务的入列
4.4.3 完工事件的处理
4.4.4 队列的高级回调方法
4.5 极简主义者step的工作流控制
4.6 小结
第5章 worker对象的多线程技术
5.1 网页版worker对象
5.1.1 网页版worker对象的局限性
5.1.2 支持网页版worker的浏览器
5.2 cluster带来的node版worker
5.2.1 node版worker的交互接口
5.2.2 node版worker对象的局限性
5.3 小结
第6章 异步的脚本加载
6.1 局限性与补充说明
6.2 (script)标签的再认识
6.2.1 阻塞型脚本何去何从
6.2.2 脚本的延迟运行
6.2.3 脚本的完全并行化
6.3 可编程的脚本加载
6.3.1 直接加载脚本
6.3.2 yepnope的条件加载
6.3.3 require.js/amd的智能加载
6.4 小结
附录 javascript编辑工具
索引
展开
本书谈论了目前JavaScript开发中最关键的主题之一:如何搞定并发性和并发任务,而不是被它们搞得抓狂!这可是目前我见过的第一本专注于该主题的著作。为了不被并发任务搞得抓狂,好好看看这本书吧。
——Peter Cooper,JavaScript Weekly编辑
Trevor简明扼要地阐释了如何编写异步的JavaScript,并且不偏不倚地展示了浏览器端示例和服务器端示例。本书既是指南又是综述,十分引人入胜,任何打算打怪升级的JavaScript开发者都必须读一读。
——Wynn Netherland,Changelog联合创办人
本书是JavaScript异步王国的终极指南。任何人只要想构建成熟的、良构的、高效的JavaScript应用,就必然要了解本书谈及的概念和工具。
——Julien Biezemans,Ruby/JavaScript开发人员,Cucumber.js创建者