以下为ChatGPT自动生成的解答,正确与否请自行判断。

BFE.devAI解答 - JavaScript 小测验
103. Promise Order III

输出顺序为: 4 2 3 1

首先,4 会被输出,因为它是在全局作用域中的 console.log。 然后,func1 会被调用,它包括两个语句:

  • createPromise().then(console.log) 会返回一个 Promise 对象,并在 Promise 对象的解决函数中打印 1。
  • console.log(2) 会立即打印 2。

接下来,func2 会被调用,它包括一个 await 表达式和一个 console.log,它们会在 Promise 对象解决后立即执行:

  • await createPromise() 会暂停函数执行,直到返回的 Promise 对象被特定的值(在这个例子中是 1)解决。因为 Promise.resolve(1) 是一个解决值为 1 的 Promise,所以它会立即调用 console.log(3)。
  • console.log(3) 会立即输出 3。

因此,输出的顺序是 4 2 3 1。