JavaScript异步编程 设计快速响应的网络应用pdf

图书网 2018年12月21日11:47:441 2.6K

如果你是一位JavaScript程序员,如果你想让自己的Web应用拥有更高的响应度,如果你想用更优雅简洁的代码描述那些让你抓狂的“休息,休息一下,等到有结果再继续吧”的业务逻辑,那么《JavaScript异步编程:设计快速响应的网络应用》就是你案头必备的那本JavaScript异步编程宝典。

《JavaScript异步编程:设计快速响应的网络应用》从基本也是重要的JavaScript事件模型开始,生动地复盘了各种异步应用情景,逐一呈现了目前在用的各种异步设计模式和异步编程类库,从PubSub到Promise,从异步工作流控制类库到worker多线程技术,甚至还谈到了浏览器端脚本的异步加载技术。总而言之,在这里,你能找到JavaScript异步编程的所有,从它的前世,到它的今生,还有它的未来。

《JavaScript异步编程:设计快速响应的网络应用》叙述流畅,从问题引入,到初步解决,再到用例延伸、进阶方案,一路抽丝剥茧,层层推进,精彩纷呈。行文娓娓道来,有如对坐漫谈,令人有如沐春风之感。

JavaScript异步编程 设计快速响应的网络应用 内容简介

《JavaScript异步编程:设计快速响应的网络应用》讲述基本的异步处理技巧,包括PubSub、事件模式、Promises 等,通过这些技巧,可以更好地应对大型Web 应用程序的复杂性,交付快速响应的代码。理解了Javascript 的异步模式可以让读者写出结构更合理、性能更出色、维护更方便的Javascript 程序。

JavaScript异步编程 设计快速响应的网络应用 目录

第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异步编程 设计快速响应的网络应用 精彩文摘

1.1.3 队列

调用 setTimeout 的时候,会有一个延时事件排入队列。然后setTimeout 调用之后的那行代码运行,接着是再下一行代码,直到再也没有任何代码。这时 JavaScript 虚拟机才会问:“队列里都有谁啊?”

如果队列中至少有一个事件适合于“触发”(就像 1000毫秒之前设定好的那个为期 500 毫秒的延时事件),则虚拟机会挑选一个事件,并调用此事件的处理器(譬如传给 setTimeout 的那个函数)。事件处理器返回后,我们又回到队列处。

图书网:JavaScript异步编程 设计快速响应的网络应用pdf

继续阅读

→→→→→→→→→→→→→→→→→→→→查找获取

程序设计

重构 改善既有代码的设计(中文版)pdf

《重构:改善既有代码的设计》(中文版)所提的这些重构准则将帮助你一次一小步地修改你的代码,这就减少了过程中的风险。很快你就会把这些重构准则和其名称加入自己的开发词典中,并且朗朗上口...
程序设计

数据结构 C语言版 第2版pdf

适读人群 :普通高校电子信息大类本科生学习、考研,同时也适合零售和培训。 采用“案例驱动”的编写模式。书中结合实际应用,将各章按照“案例引入——数据结构及其操作——案例分析与实现”...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论:1   其中:访客  1   博主  0
    • MADO
      MADO 9

      很不错