ES2015承诺——我错过了什么?

ES2015 promises - what am I missing?

本文关键字:什么 错过了 承诺 ES2015      更新时间:2023-09-26

我期望下面的代码打印1 2 3。但是它打印的是1 undefined 3。我错过了什么?

var p = Promise.resolve('2');
new Promise(resolve => { console.log('1'); resolve(); })
  .then(p)
  .then((result) => console.log(result, '3'));

您需要将p变量封装在一个匿名函数

var p = Promise.resolve('2');
new Promise(resolve => { console.log('1'); resolve(); })
  .then(() => p)
  .then((result) => console.log(result, '3'));