JavaScript 回调函数

  • 回调函数是啥?

回调函数就是一个函数作为一个参数传递给另一个函数,在另一个函数里被调用。回调函数的机制可以帮助JS实现异步编程。

  • 什么是异步?
    异步就是一个任务拆分成几个步骤,第一个步骤进行的时候,系统可以先去执行其他任务,等第一个步骤结束了再回头进行下一个步骤。
  • 回调函数怎么写?
    一个任务Task=A+B两个步骤,A步骤为function_A(), B步骤为function_B, B可能需要根据A的结果进行不同的操作:
function function_A(callback, parameter_A) {
    // What we need to do in A
    callback(error, parameter_callback);
}

// 第一种方式
function_B(error, parameter_B){
    if(error) throw error;
    // What we need to do in B
};
function_A(function_B, parameter_A);

// 第二种方式
function_A(function(error, parameter_B){
    if (error) throw error;
    // What we need to do in B
}, parameter_A);

//function_A的操作很耗时,为了不堵塞太久可以加上timeout
function function_A(callback){
    setTimeout(function () {
        // What we need to do in A
        callback();
    }, 1000);
}
阅读 47

推荐阅读