预期结果应为async result is: 2
。但是它是0。
"use strict"
// run consoleLogPromise
consoleLogPromise( PromiseAChangeCount() );
// a utility which will always console log any promise
async function consoleLogPromise(callback) {
//const res = await callback(); TypeError: callback is not a function
const res = await callback;
console.log("async result is: ", res);
}
// a promise returning function
async function PromiseAChangeCount() {
let count = 0;
await setTimeout(() => {
count = 2
}, 200);
return count;
}
您必须执行类似的操作。返回PromiseAChangeCount
从中解析出一个值的Promise setTimeout
,然后您可以在其中等待它consoleLogPromise
"use strict"
// run consoleLogPromise
consoleLogPromise(PromiseAChangeCount());
// a utility which will always console log any promise
async function consoleLogPromise(callback) {
//const res = await callback(); TypeError: callback is not a function
const res = await callback;
console.log("async result is: ", res);
}
// a promise returning function
async function PromiseAChangeCount() {
let count = 0;
return new Promise((resolve, _) => {
setTimeout(() => {
count = 2;
resolve(count)
}, 200);
})
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句