承诺始终在 Chrome 控制台中挂起

Promise always pending in Chrome console

为什么以下承诺永远不会解决?

const x= new Promise(resolve=>setTimeout(()=>resolve(12),5000));

通过在控制台中写入,

const x= new Promise(resolve=>resolve(12))

正在

`Promise {<fulfilled>: 12}`

通过写作

const x= new Promise(resolve=>setTimeout(()=>resolve(12),5000)) 

正在

Promise {<pending>}

想法,应该会在 5 秒后完成。但是,事实并非如此。为什么?

控制台只是向您显示 Promise 当前状态 的快照。它不会监视其状态的变化。

Why the following promise never resolves?

您可以清楚地看到这确实在 5 秒后解决了:

const x= new Promise(resolve=>setTimeout(()=>resolve(12),5000)) ;
x.then(result => console.log(result));