javascript异步/等待不工作

javascript异步/等待不工作,javascript,async-await,Javascript,Async Await,我有一个特殊的例子,在这个例子中,我需要等待异步调用的结果 持续的。我使用的是async/await关键字,但运气不好。 谢谢你的帮助 这是我试图让它工作,数字应该是数字顺序 功能睡眠(毫秒){ 返回新承诺(resolve=>setTimeout(resolve,ms)); } 异步函数demo(){ 书面文件('2…'); 等待睡眠(2000年); 书面文件('3…'); } 书面文件('1…'); 演示(); 文件书面形式(“4”)您应该在之后使用.then() 功能睡眠(毫秒){ 返回

我有一个特殊的例子,在这个例子中,我需要等待异步调用的结果 持续的。我使用的是async/await关键字,但运气不好。 谢谢你的帮助

这是我试图让它工作,数字应该是数字顺序

功能睡眠(毫秒){
返回新承诺(resolve=>setTimeout(resolve,ms));
}
异步函数demo(){
书面文件('2…');
等待睡眠(2000年);
书面文件('3…');
}
书面文件('1…');
演示();
文件书面形式(“4”)
您应该在之后使用
.then()

功能睡眠(毫秒){
返回新承诺(resolve=>setTimeout(resolve,ms));
}
异步函数demo(){
书面文件('2…');
等待睡眠(2000年);
书面文件('3…');
}
书面文件('1…');
演示()。然后(()=>{
文件书面形式(“4”);

});异步函数将返回一个
Promise
,因此您需要等待调用
demo

const sleep=(ms)=>new Promise(解析=>setTimeout(解析,ms))
const demo=async()=>{
console.log('2…'))
等待睡眠(2000年)
console.log('3…'))
}
常量blah=async()=>{
console.log('1…'))
等待演示()
console.log('4'))
}

blah()
为什么您认为它们应该按数字顺序排列<代码>3
排在最后,因为这是在Promise函数之后执行的最后一件事。您是否希望在最后显示
1…2…3…4.
?然后不要使用
document.writeln
。改用标准的domapi。