嘿,我一直在学习promise,无法理解为什么在下面的代码中未定义a的值。
a = new Promise(function(resolve, reject) {
setTimeout(function(){
resolve(5);
}, 1000);
});
console.log(a);
任何解释将不胜感激。谢谢。
答案 0 :(得分:3)
此处console.log
将立即执行,并显示分配了一个Promise对象的a
的值。因此它将a
作为对象记录。Promise
为resolved
后,您想记录该值。尝试登录then
a = new Promise(function(resolve, reject) {
setTimeout(function() {
resolve(5);
}, 1000);
});
a.then((data) => {
console.log(data)
})