From 8268cf51506ef410eef13f0e7d14a8fec2f53b63 Mon Sep 17 00:00:00 2001 From: qianguyihao Date: Tue, 25 May 2021 20:57:26 +0800 Subject: [PATCH] =?UTF-8?q?update:=20Promise.all=20=E5=92=8C=20Promise.rac?= =?UTF-8?q?e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 06-JavaScript基础:ES6语法/11-Promise的链式调用.md | 4 ++-- 06-JavaScript基础:ES6语法/12-Promise的静态方法.md | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/06-JavaScript基础:ES6语法/11-Promise的链式调用.md b/06-JavaScript基础:ES6语法/11-Promise的链式调用.md index eb8c221..e9d491f 100644 --- a/06-JavaScript基础:ES6语法/11-Promise的链式调用.md +++ b/06-JavaScript基础:ES6语法/11-Promise的链式调用.md @@ -280,7 +280,7 @@ getPromise('a.json') 打印结果: ``` -'a: err +a: err undefined c:success ``` @@ -365,7 +365,7 @@ return 后面的返回值,有两种情况: ### 情况 1:返回 Promise 实例对象 -举例如下:(这个例子,跟上一段 Ajax 链式调用 的例子差不多) +举例如下: ```js getPromise('a.json') diff --git a/06-JavaScript基础:ES6语法/12-Promise的静态方法.md b/06-JavaScript基础:ES6语法/12-Promise的静态方法.md index 93967c4..c3b14ff 100644 --- a/06-JavaScript基础:ES6语法/12-Promise的静态方法.md +++ b/06-JavaScript基础:ES6语法/12-Promise的静态方法.md @@ -24,7 +24,7 @@ Promise 的自带 API 提供了如下静态方法: - `Promsie.all()`:并发处理多个异步任务,所有任务都执行成功,才算成功(走到 resolve);只要有一个失败,就会走到 reject,整体都算失败。 -- `Promise.race()`:并发处理多个异步任务,返回的是第一个执行完成的 promise,且状态和第一个任务的状态保持一致。 +- `Promise.race()`:并发处理多个异步任务,返回的是第一个执行完成的 promise,且状态和第一个完成的任务状态保持一致。 前面的几篇文章,讲的都是 Promise 的**实例方法**;今天这篇文章,我们来详细讲一下 Promise 的**静态方法**。 @@ -208,7 +208,7 @@ Promise.all([promise1, promise2, promise3]) ## Promise.race() -`Promise.race([p1, p2, p3])`:并发处理多个异步任务,返回的是第一个执行完成的 promise,且状态和第一个任务的状态保持一致。参数里传的是多个 promise 实例组成的数组。 +`Promise.race([p1, p2, p3])`:并发处理多个异步任务,返回的是第一个执行完成的 promise,且状态和第一个完成的任务状态保持一致。参数里传的是多个 promise 实例组成的数组。 上面这句话,第一次读时,可能很绕口。我说的再通俗一点:在多个同时执行的异步任务中,先找出哪个异步任务**最先执行完成**(无论是走到 resolve,还是走到 reject,都算执行完成)。然后,整体的状态跟这个任务保持一致。如果这个任务执行成功,那整体就算成功(走到 then);如果这个任务执行失败,那整体就算失败(走到 catch)。 @@ -216,7 +216,7 @@ Promise.all([promise1, promise2, promise3]) 我刚开始学 Promise.race()的时候,误以为它的含义是“只要有一个异步执行成功,整体就算成功(走到 then);所有任务都执行失败,整体才算失败(走到 catch)”。现在想来,真是大错特错,过于懵懂。 -我们来看看各种场景的打印结果,便能让你擦干泪水。 +我们来看看各种场景的打印结果,便能让你擦干泪水,继续前行。 ### 语法举例 @@ -246,12 +246,12 @@ const promise3 = new Promise((resolve, reject) => { Promise.race([promise1, promise2, promise3]) .then((res) => { - // 只要有一个异步任务执行成功,就会走到这里 + // 第一个完成的任务,如果执行失败,就会走到这里 // 这里拿到的 res,是第一个成功的 promise 返回的结果,不是数组 console.log(JSON.stringify(res)); }) .catch((err) => { - // 所有异步任务异步都执行失败,才会走到这里 + // 第一个完成的任务,如果执行失败,就会走到这里 console.log(err); }); ```