JavaScript异步编程:设计快速响应的网络应用这本书适合中级JavaScript的用户 ,讲述基本的异步处理技巧,包括PubSub、事件模式、Promises等,通过这些技巧,可以更好地应对大型Web应用程序的复杂性,交付快速响应的代码。理解了Javascript的异步模式可以让读者写出结构更合理、性能更出色、维护更方便的Javascript程序。
JavaScript异步编程目录
第1章 深入理解JavaScript事件 1
1.1 事件的调度 1
1.1.1 现在还是将来运行 2
1.1.2 线程的阻塞 3
1.1.3 队列 4
1.2 异步函数的类型 5
1.2.1 异步的I/O函数 5
1.2.2 异步的计时函数 7
1.3 异步函数的编写 10
1.3.1 何时称函数为异步的 10
1.3.2 间或异步的函数 11
1.3.3 缓存型异步函数 12
1.3.4 异步递归与回调存储 14
1.3.5 返值与回调的混搭 15
1.4 异步错误的处理 18
1.4.1 回调内抛出的错误 18
1.4.2 未捕获异常的处理 20
1.4.3 抛出还是不抛出 23
1.5 嵌套式回调的解嵌套 24
1.6 小结 26
第2章 分布式事件 27
2.1 PubSub模式 28
2.1.1 EventEmitter对象 30
2.1.2 玩转自己的PubSub 31
2.1.3 同步性 32
2.2 事件化模型 34
2.2.1 模型事件的传播 35
2.2.2 事件循环与嵌套式变化 36
2.3 jQuery自定义事件 38
2.4 小结 41
第3章 Promise对象和Deferred对象 43
3.1 Promise极简史 45
3.2 生成Promise对象 46
3.2.1 生成纯Promise对象 48
3.2.2 jQuery API中的Promise对象 50
3.3 向回调传递数据 52
3.4 进度通知 53
3.5 Promise对象的合并 55
3.6 管道连接未来 58
3.7 jQuery与Promises/A的对比 62
3.8 用Promise对象代替回调函数 63
3.9 小结 65
第4章 Async.js的工作流控制 67
4.1 异步工作流的次序问题 68
4.2 异步的数据收集方法 70
4.2.1 Async.js的函数式写法 71
4.2.2 Async.js的错误处理技术 73
4.3 Async.js的任务组织技术 75
4.3.1 异步函数序列的运行 75
4.3.2 异步函数的并行运行 77
4.4 异步工作流的动态排队技术 78
4.4.1 深入理解队列 78
4.4.2 任务的入列 80
4.4.3 完工事件的处理 81
4.4.4 队列的高级回调方法 82
4.5 极简主义者Step的工作流控制 83
4.6 小结 84
第5章 worker对象的多线程技术 87
5.1 网页版worker对象 89
5.1.1 网页版worker对象的局限性 90
5.1.2 支持网页版worker的浏览器 91
5.2 cluster带来的Node版worker 92
5.2.1 Node版worker的交互接口 94
5.2.2 Node版worker对象的局限性 95
5.3 小结 96
第6章 异步的脚本加载 97
6.1 局限性与补充说明 98
62 <script>标签的再认识
621 阻塞型脚本何去何从
622 脚本的延迟运行
623 脚本的完全并行化
63 可编程的脚本加载
631 直接加载脚本
632 yepnope 的条件加载
633 Requirejs/AMD 的智能加载
64 小结
6.2JavaScript异步编程节选
- PC官方版
- 安卓官方手机版
- IOS官方手机版