老师请解释下这两道题的执行过程
async function async1( {
console.log( "async1 start " );
await async2();
console.log( "async1 end " );
}
async function async2(){
console.log( “async2”);
}
console.log( ‘script start ‘);
setTimeout(function(){
console.log( " setTimeout’);
} ,0)
async1();
new Promise(function(resolve){
console.log( " promise1 ");
resolve();
}).then(function( {
console.log( " promise2’);
});
console.log( 'script end " );
function fun(n,a){
console.log(a);
return {
fun:function(m){
return fun(m,n);
}
}
}
var v = fun(0).fun(1);
v.fun(2);
v.fun(3);
setTimeout(function(){
console.log(1);
})
Promise.resolve(function(){
console.log(2);
})
new Promise(function(resolve){
console.log(3);
resolve();
}).then(function(){
console.log(4);
})
console.log(5);