Zakas大神又出新作,读过这本书的人都说:超实用!

学习 Promise 对于前端开发者来说至关重要,它不仅是异步编程的基础,还是面试和工作中的常见话题。对于一名成熟的 JavaScript 开发人员来说,充分理解 Promise 的工作方式比以往任何时候都更加重要。

前端大神扎卡斯的新作《一天理解JavaScript Promise》终于出版了,如果你对如何使用 Promise 有困惑,那这本小册子你一定不能错过。本文摘自本书作者序,扎卡斯大神讲述了自己为什么要写这样一本书,这本书为大家解决了哪些问题。我们一起来看看他是怎么说的。

我的第一本书《JavaScript高级程序设计》于 2005 年出版,全书超过 500 页。我当时认为,它涵盖了 JavaScript 的所有重要细节。

2009 年出版的第 2 版超过 700 页,2012 年出版的第 3 版则超过 900 页。那时我才意识到,任何一本书都无法涵盖 JavaScript 的所有重要细节。该语言变得非常庞大,可用的应用程序接口也极为丰富。试图更新一部巨著成为不可持续的工作。

在过去的 20 年里,JavaScript 的迅猛发展使它从一门仅适用于浏览器的语言,变成了几乎无处不在的语言。这要归功于 Node.js、Deno、Bun  等运行环境。

你可以仅用 JavaScript 编写整个 Web 应用程序。此外,JavaScript 还可用于云函数、边缘函数、物联网设备等。JavaScript 已经从一门鲜有人知的语言,变成了你在 2024 年的今天从事计算机工作时必须掌握的语言。

随着这种变化,我必须改变自己撰写关于 JavaScript 的图书的方式。我决定不再撰写关于整个 JavaScript 生态系统的书,转而撰写关于 JavaScript 特定主题的小书。

我希望关注所有 JavaScript 开发人员都需要了解的基础主题,无论他们的代码将在何处运行。很快,我就意识到,开发人员如今最需要理解的主题是如何处理 Promise。

JavaScript 一直有能力推迟代码的执行时间,但优雅地实现这一点要归功于 2015 年引入的 Promise。在那之前,JavaScript 应用程序接口要么使用笨拙且易出错的回调函数,要么使用事件处理器。如今,你仍然可以在  IndexedDB 和 Node.js fs 模块等浏览器应用程序接口中看到这一点。

fetch() 等新的应用程序接口使用 Promise。这样一来,你就能够使用 await 操作符让异步调用看起来和同步操作一样。与回调不同,未处理的错误会被抛出。开发人员现在可以利用工具查看异步调用栈,以调试程序。很多人希望不要阻塞 JavaScript 应用程序的主线程,无论是在浏览器端还是在服务器端。Promise 是实现这一点的首要途径。

这就是我写作本书的原因。如今在编写 JavaScript 应用程序时,你可能会更多地使用 await 操作符而不是 if 语句。深入理解 Promise 是编写安全、可扩展、高性能 JavaScript 应用程序的关键。这种需求在未来数年内会持续存在。

尼古拉斯·C. 扎卡斯

2024 年 2 月

写给前端人的小册子

66a9db822b0e03cff51d4dab6e0f1b65.png

《一天理解JavaScript Promise》

尼古拉斯·C. 扎卡斯 | 著

张越越 | 译

本书的目标是解释 JavaScript 中的 Promise 是如何工作的,同时给出示例,以说明何时使用它。JavaScript 所有新的异步接口都将用 Promise 来构建,因此 Promise 是从整体上理解 JavaScript 的一个核心知识点。作者希望本书能帮助读者在项目中成功使用 Promise。另外还随书赠送 Promise 速查表,助你快速查询。

作者简介

edf9953100d24b18d447f8a4088aa06f.jpeg

尼古拉斯·C. 扎卡斯(Nicholas C. Zakas)是全球知名的软件工程师、作家和技术布道者,尤其在 JavaScript 领域享有极高的声誉。他不仅是一名资深的前端开发者,还是一系列畅销技术书籍的作者,其中包括《JavaScript高级程序设计》(也被亲切地称为“JavaScript红宝书”)和《一天理解JavaScript Promise》等。

扎卡斯最为人熟知的成就是他的著作,这些书籍对无数前端开发者产生了深远的影响。他的写作风格以清晰、实用和深入细节著称,使得复杂的技术概念变得易于理解和应用。除了写作,扎卡斯还是各种技术会议的常客,经常在世界各地分享他的知识和见解。

全书内容概览

全书共包含 5 章内容,每一章介绍 JavaScript Promise 的一个不同的方面。多章直接介绍 Promise 的应用程序接口,内容循序渐进,以便你能逐步构建自己的知识体系。而且每一章都提供代码示例来帮助你学习新的句法和概念。

第 1 章介绍 Promise 的概念和工作原理,以及构造和使用它的不同方法。

第 2 章讨论将多个 Promise 链接在一起的几种方法,从而使异步操作的组合变得更加容易。

第 3 章解释 JavaScript 的一些内置方法。这些方法用于监控和响应多个并行的 Promise。

第 4 章介绍异步函数和 await 表达式的概念,并解释它们如何使用 Promise 及与 Promise 的相关性。

第 5 章解释如何在没有拒绝处理器的情况下正确追踪被拒绝的 Promise 请求。

原版读者评价

@Josh Goldberg:本书是一本关于 JavaScript 中异步代码的优秀入门书,其中还深入探讨了许多重要的细微差别。它的解释很全面,代码示例清晰简洁。我强烈推荐给所有 JavaScript/TypeScript 程序员,让你从新手变成经验丰富的专家。

@hou.danwu:将 Promise 机制讲解得相当透彻,短小而专注。

@GaiheiluKamei:对 Promise 的基础,链式调用等内容的讲解很全面,详细。

新书细节

6769a16b1aceb9e3a483a92ab29a0e98.jpeg

43917f40816a106121b4d9fefe84d80d.jpeg

84a0a52f0e9431ed18bbde8d7615ee5c.jpeg

8342282f14496e28421fceaaef351074.jpeg

faae1b97c3a8a3b20533d03ae572a813.jpeg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值