【发布时间】:2020-05-13 22:38:52
【问题描述】:
我想知道为什么当我 console.log 我的承诺时返回整数值。
var promise = new Promise(function(resolve, reject) {
setTimeout(function() {
resolve('hello world');
}, 2000);
});
promise.then(function(data) {
console.log(data);
});
setTimeout(() => console.log("after: ", promise), 3000);
输出:
但如果我在我的承诺解决后删除了 console.log,则不会返回任何整数。 为什么会发生这种情况?
【问题讨论】:
-
当您在控制台中运行命令时,它们的返回值会被记录下来
-
我没有在这里的终端上得到一个数字输出,我也没想到。 @HereticMonkey
setTimeout没有直接在终端上运行,赋值为undefined。我误会了什么? -
@Mark 它正在运行。如果您只查看图像,则会丢失分号后的省略号,这会省略 OP 代码块中也粘贴到控制台中的其余代码。
-
知道了——这是最后一个
setTimeout谢谢@HereticMonkey。
标签: javascript promise