Skip to content

【Promise第19题】下面代码的输出是什么? ​

js
const promise = Promise.resolve().then(() => {
  return promise;
})
promise.catch(console.err)

参考答案: ​

解析 ​

.then 或 .catch 返回的值不能是 promise 本身,否则会造成死循环,因此结果会报错。

结果 ​

Uncaught (in promise) TypeError: Chaining cycle detected for promise #<Promise>