简介
你将学习本章包含的主题,其中包括使用 Promise、async/await 以及在浏览器中存储数据。
19世纪,一支国际工程师团队开启了一项当时最伟大的工程挑战之一:铺设一条横跨大西洋的电报电缆。这项工程经历了多次失败,耗费了大量资金和时间,最终才取得成功。最后,人们可以在令人惊叹的17小时内将信息从欧洲传送到美国——这比此前近两周的船运时间快了太多。
快速通信往往意味着成败之别。JavaScript 的复兴部分原因在于,你只需加载一次页面,之后所有与服务器的通信都可以通过 JavaScript 完成。这样一来,网站不再只是由一系列独立页面组成,而真正变成了可交互的软件应用。跳过页面重新加载,能为用户节省时间和资源,他们无需反复下载新的图片和其他资源,延迟更低,体验也显著提升。获取外部数据,正是所谓“单页应用”的关键所在。
本章内容包括什么?
在本章中,你将学习如何获取外部数据,并学会如何使用接收到的数据。JavaScript 是一种异步语言,这意味着它在等待请求数据时不会阻塞代码执行。JavaScript 能让你构建响应迅速的网站,但异步请求的处理方式可能稍显复杂。
我们将首先探讨如何使用 fetch() 获取远程数据。接着深入讲解Promise,这是 JavaScript 处理异步操作的核心机制。然后,我们会引入新的 async/await 语法,让处理 Promise 更加直观清晰。最后,你将学习如何在浏览器中存储数据,从而在无需服务器访问的情况下保持用户的使用状态。
你或许无法达到横跨大西洋电缆那样的性能飞跃,但每一秒都至关重要。不要惊讶于移动用户因每次操作都需要重新渲染页面而离开你的网站。虽然无法完全摆脱服务器,但你可以通过优化设计,让每一次服务器请求尽可能顺畅无感。
在接下来的技巧中,你将学习如何使用 Promise 来执行异步操作。