返回

走出Promise的认知误区,来试试这几道题!

前端

身处这瞬息万变的网络世界,精通JavaScript无疑是一项必备技能。在 JavaScript 中,使用 Promise 是一件再普通不过的事情。但你真的了解 Promise 吗?它有哪些容易被忽略的细节呢?现在就来尝试以下几道题,专治各种不服!

1. 当一个 Promise 被 reject 时,会发生什么情况?

A. 程序会抛出异常。
B. Promise 会进入 rejected 状态。
C. Promise 会进入 pending 状态。
D. 程序会立即终止。

2. 当一个 Promise 被 reject 时,它会影响其他 Promise 吗?

A. 不影响。
B. 会影响。
C. 不确定。
D. 视情况而定。

3. 当一个 Promise 被 reject 时,你能捕获到错误信息吗?

A. 可以。
B. 不可以。
C. 不确定。
D. 视情况而定。

4. 当一个 Promise 被 reject 时,你能在控制台看到错误信息吗?

A. 可以。
B. 不可以。
C. 不确定。
D. 视情况而定。

5. 如何处理 Promise 的错误?

A. 使用 try-catch 语句。
B. 使用 .catch() 方法。
C. 使用 .then() 方法。
D. 使用 .finally() 方法。

6. 如何在 Promise 中使用异步代码?

A. 使用 setTimeout() 方法。
B. 使用 setInterval() 方法。
C. 使用 XMLHttpRequest 对象。
D. 以上皆可。

7. 如何在 Promise 中使用回调函数?

A. 使用 .then() 方法。
B. 使用 .catch() 方法。
C. 使用 .finally() 方法。
D. 以上皆可。

8. Promise 与回调函数有什么区别?

A. Promise 可以处理异步代码,而回调函数不能。
B. Promise 可以捕获错误,而回调函数不能。
C. Promise 可以使用链式调用,而回调函数不能。
D. 以上皆是。

9. Promise 与 async/await 有什么区别?

A. async/await 是 Promise 的语法糖。
B. async/await 可以处理异步代码,而 Promise 不能。
C. async/await 可以捕获错误,而 Promise 不能。
D. 以上皆非。

10. Promise 在哪些场景中很有用?

A. 处理异步操作。
B. 错误处理。
C. 代码组织。
D. 以上皆是。

动动脑筋,认真答完这 10 道题,相信你对 Promise 的认知将更上一层楼。如果你对 Promise 还有其他疑问,欢迎留言讨论!