这是我的测试代码,用于测试在promise构造函数中嵌入的另一个回调中调用resolve回调。
var p = new Promise(function (resolve) {
setTimeout(function () {
resolve('starbar');
}, 3000);
});
console.log(p.then(function (v) {
console.log(v);
}));
在Node中运行代码时,它会记录Promise { <pending> }
。
为什么会发生这种情况以及如何将其关闭?
答案 0 :(得分:1)
当您记录整个承诺时会发生什么,这就是您在此处所做的事情。
您不必将其关闭,只需停止记录承诺
即可var p = new Promise(function (resolve) {
setTimeout(function () {
resolve('starbar');
}, 3000);
});
p.then(function (v) {
console.log(v);
});