首页 > 试题广场 >

下面的代码使用了 Promise,选择输出结果是什么() f

[单选题]
下面的代码使用了 Promise,选择输出结果是什么()
function fetchAPI() {
    return new Promise((resolve, reject) => {
        setTimeout(() => reject("Error: API request failed"), 1000);
    });
}
console.log("Start");
fetchAPI().then(data => console.log(data)).catch(error => console.log(error));
console.log("End");
  • Start, End, Error: API request failed
  • Start, Error: API request failed, End
  • End, Start, Error: API request failed
  • Error: API request failed, Start, End
  1. 同步代码执行顺序

    • console.log("Start") 立即执行,输出 Start。
    • fetchAPI() 返回一个 Promise,但内部的 setTimeout 是异步的,会在 1 秒后触发拒绝,此时主线程继续执行后续代码。
    • console.log("End") 立即执行,输出 End。
  2. 异步操作与事件循环

    • 1 秒后,setTimeout 触发 Promise 的 reject("Error: API request failed")。
    • 由于 Promise 被拒绝,.catch(error => console.log(error)) 捕获错误,输出 Error: API request failed。
发表于 2025-02-21 14:33:04 回复(0)