美文网首页
JavaScript 回调函数最通俗易懂的解释

JavaScript 回调函数最通俗易懂的解释

作者: 迈克高 | 来源:发表于2017-10-10 14:18 被阅读0次

    我们先来看看回调的英文定义:A callback is a function that is passed as an argument to another function and is executed after its parent function has completed。

    字面上的理解,回调函数就是一个参数,将这个函数作为参数传到另一个函数里面,当那个函数执行完之后,再执行传进去的这个函数。这个过程就叫做回调。

    其实也很好理解对吧,回调,回调,就是回头调用的意思。主函数的事先干完,回头再调用传进来的那个函数。但是很多人将回调函数解释的云里雾里,很高深的样子。

    举一个别人举过的例子:大学里和妹子约会结束,送她到女生宿舍楼下面的时候,你肯定会说:“到寝室给我发条信息。” 对不,然后你女朋友到宿舍后还真给你发了条信息。小伙子,你有戏了。其实这就是一个回调的过程。你留了个参数函数(要求女朋友给你发条信息)给你女朋友,然后你女朋友回宿舍,回宿舍的动作是主函数。她必须先回到宿舍以后,主函数执行完了,再执行传进去的函数,然后你就收到一条信息了。

    现在基本理解回调函数的意思了吧。不理解的话没关系,

    //定义主函数,回调函数作为参数

    function A(callback) {

    callback();

    console.log('I am main function!');

    }

    //定义回调函数

    function B() {

    setTimeout("console.log('I am callback function!')",5000);//模仿耗时操作

    }

    //调用主函数,将函数B传进去

    A(B);

    //输出结果

    I am main function!

    I am callback function!

    上面的代码中,我们先定义了主函数和回调函数,然后再去调用主函数,将回调函数传进去。

    定义主函数的时候,我们让代码先去执行callback()回调函数,但输出结果却是后输出回调函数的内容。这就说明了主函数不用等待回调函数执行完,可以接着执行自己的代码。所以一般回调函数都用在耗时操作上面。比如ajax请求,处理文件等。

    相关文章

      网友评论

          本文标题:JavaScript 回调函数最通俗易懂的解释

          本文链接:https://www.haomeiwen.com/subject/fplvyxtx.html