美文网首页
回调函数

回调函数

作者: 温酒居士 | 来源:发表于2019-10-07 14:17 被阅读0次

下面是JS回调函数的简单示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<button style="" onclick="test()">点击</button>
</body>
<script>
    function a(callback)
    {
        alert("我是函数a");
        callback();
    }
    function b(){
        alert("我是回调函数b");
    }
    function c(){
        alert("我是回调函数c");
    }

    function test() {
        a(b)//此时函数a里面的callback()指的就是函数b
        a(c)//此时函数a里面的callback()指的就是函数c
    }
</script>
</html>

回调函数并不是只有JS才有,其它很多开发语言都有,百度百科解释也很清楚,我提取了一句话:回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。

个人理解:
首先它是一个函数,函数即是我们说的方法,该函数作为另一个函数的参数,当另一个函数需要的时候可以对该函数进行调用从而执行该函数。为什么需要回调函数?我觉得这就是一种代码封装,实现重用。当然你也可以不用,所有代码都写在一个方法里,但当很多个方法中都需要这个功能的时候你就需要写很多次重复的代码,导致代码冗余,函数体臃肿杂乱,所以这里就需要将功能相同的代码封装到一个函数当中。为啥将一个函数作为另一个函数的参数?我直接调用不也可以吗?如下

  function d() {
        alert("我是回调函数d");
        b()
    }

当然是可以的,但是这个问题跟“为啥定义一个变量,我直接传递一个具体的数据不可以吗?”是一样的,如果你能明白变量、形参、实参存在的意义,那这个问题自然就能明白。

相关文章

  • JavaScript函数_08回调函数

    回调函数 回调函数(回调),当我们把某个函数作为参数传递给另一个函数的时候,这个函数就是回调函数 回调函数的基本写...

  • Promise

    回调 把一个函数A传给另一个函数B调用,那么A就是回调函数。 回调地狱 回调套回调套回调套回调套回调套回调套回调....

  • 回调函数与promise

    回调 把一个函数A传给另一个函数B调用,那么A就是回调函数 具名回调写法 匿名回调写法 多层嵌套的匿名回调(回调地...

  • 回调函数与promise

    回调 把一个函数A传给另一个函数B调用,那么A就是回调函数 具名回调写法 匿名回调写法 多层嵌套的匿名回调(回调地...

  • javascript回调函数

    javascript回调函数很玄幻。 jquery 中大量使用了回调函数。直到现在才看懂 普通回调函数 匿名回调函...

  • 异步的实现

    异步的三种实现方式: 回调函数事件Promise 回调函数 回调函数不一定是异步 但是异步一定是回调函数。 事件 ...

  • JavaScript系列之回调函数callback

    JavaScript系列之回调函数callback JavaScript回调函数的使用是很常见的,引用官方回调函数...

  • mqtt python包回调分析

    mqtt的python包,回调函数比较复杂,每次在连接之前,需要先实现回调函数,回调函数的传入参数固定 将回调函数...

  • Android使用suspendCancellableCorou

    普通的回调函数: 回调方法,模拟耗时操作 去掉回调,转换为挂起函数:

  • Promise

    回调 把一个函数A传给另一个函数B调用,那么A就是回调函数一个最基本的具名回调匿名回调 回调地狱匿名回调嵌套过多层...

网友评论

      本文标题:回调函数

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