通过JavaScript回调函数:实现任务流程控制

2018-11-27  本文已影响0人  jasonhsu9

回调函数和异步并没有什么关系,不过回调函数里面使用异步API,即可触发js异步机制,从而达到控制程序执行顺序的目的。

//用带有异步API 如setTimeout()的callback来实现任务顺序的控制
function mainTask(callback) {
    callback();
    console.log('mainTask')
}

function asyncTask() {
    //关键是setTimeout()被js引擎理解为耗时任务,
    //所以把它推向事件队列
    //js根据原生API类型来判断需要同步执行还是异步执行
    //如果需要异步执行,则触发事件轮询机制
    setTimeout(function () {
        console.log('asyncTask')
    }, 0);
}

mainTask(asyncTask);
//结果是:
//mainTask
//asyncTask
上一篇 下一篇

猜你喜欢

热点阅读