异步同步与回调

异步

不等结果,直接进行下一步

异步与同步例子
function 异步(){
    setTimeout(function(){
        console.log('异步做事');
    },5000)
}


function 同步(){
    console.log('同步做事');
}

调用

异步();
console.log(1);
//1
//异步做事
同步();
console.log(1);
//同步做事
//1

如果是做完事再打1 —同步
如果是不做完就打1 —异步

回调

回调是拿到异步结果的一种方式,回调也可以拿同步结果.
fn1将别人传给它的fn2调用了,这种调用就是回调.

使用异步回调
function fn1(callback){
    var n = 0;
    var id = setInterval(()=>{
        console.log(n);
        n += 1;
        if(n >= 5){
        window.clearInterval(id);
        callback();
        }
    },500)
}

function fn2(){
    console.log('异步结束后再回调该函数');
}

fn1(()=>{
    fn2();
});

当打印完n后,,再执行回调函数