Javascript 等待呼叫后,它不会';不要执行下一行
我期望的输出是什么Javascript 等待呼叫后,它不会';不要执行下一行,javascript,Javascript,我期望的输出是什么 const blabla = async () => { const foobar = async () => { return new Promise((resolve, reject) => { console.log("foo"); }) } await foobar(); console.log("bar"); } blab
const blabla = async () => {
const foobar = async () => {
return new Promise((resolve, reject) => {
console.log("foo");
})
}
await foobar();
console.log("bar");
}
blabla();
但我得到的只是foo
,那里没有我所期望的bar
。它看起来像console.log(“bar”)代码>未执行
foo
bar
你忘了兑现你的诺言
constblabla=async()=>{
const foobar=async()=>{
返回新承诺((解决、拒绝)=>{
控制台日志(“foo”);
resolve();//您忘记调用resolve
,因此承诺永远挂起,未解决这是在浏览器中还是在节点中?@xdhmoore无所谓,所描述的行为(以及正确的解决方案)将适用于这两种环境
foo