Я изучаю API JavaScript async / await
и реализую пример кода из MDN.
В одном разделе подробно описываются различия между async/await
и promise.then()
,написано следующее:
var resolveAfter2Seconds = function() {
console.log("starting slow promise");
return new Promise(resolve => {
setTimeout(function() {
resolve(20);
console.log("slow promise is done");
}, 2000);
});
};
var parallel = function() {
console.log('==PARALLEL with Promise.then==');
resolveAfter2Seconds().then((message)=>console.log(message));
// in this case could be simply written as console.log(resolveAfter2Seconds());
}
setTimeout(parallel, 10000);
Я подозрительно относился к биту, который говорит, что
// в этом случае может быть просто записано как console.log (resolAfter2Seconds ())
Итак, я запустил код и получил следующее:
starting slow promise
Promise { <pending> }
slow promise is done
Это пример кода кода MDN, пытающийся подразумевать, что вместо Promise { <pending> }
я должен увидеть 20
?Зачем?