z.cn/wangzhan/weihu/"> 网站运营维护
  • 案例

  • 方案

  • 电商网站开发

  • 微信小程序

  • 我们

  • 联系

  • 资讯

    精准传达 • 有效沟通

    从品牌网站建设到网络营销策划,从策略到执行的一站式服务

    浅析JS中回调函数及用法

    回调函数,什么是回调函数呢?很多初学者都不是很明白,感觉懵懵的,不理解,更不会用!

    网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了天元免费建站欢迎大家使用!

    其实简单理解的话就是在一个函数执行完毕后,得到想要的特定数据后在去执行的函数,并没有性药中的那么高深!

    function getdata(callback){
        //这里我们假设是从后端获取数据
        setTimeout(function(){
         //假设我们获取到数据info
         var info = {
          "id":1,
          "name":'张三'
         }
         //得到数据以后执行函数方法
         callback(info)//这个就是回调函数
        },1000)

    上述代码就可以清除的告诉你什么是回调函数!可能你还是不太明白,这个callback是什么,他有什么作用呢?

    getdata(check)
       function getdata(callback){
        //这里我们假设是从后端获取数据
        setTimeout(function(){
         //假设我们获取到数据info
         var info = {
          "id":1,
          "name":'张三'
         }
         //得到数据以后执行函数方法
         callback(info)//这个就是回调函数
        },1000)
     }
    function check(data){
      if(data.id==1){
       console.log('验证成功,可以通过')
      }
    }

    看上面的代码,有两个方法,getdata和check,我们执行了getdata方法,并把check当做参数传给了getdata,那么这时候check就是回调函数!

    那么这个回调函数有什么作用呢,怎么用呢?如果你已经理解了回调函数的意义,那么你将很好的理解他的用法,记忆怎么在实际项目中去用他!

    看下面的代码,我写的一种实际应用中的用法:

    //vue框架的应用,其他框架的可以自行修改!!!
    //用户权限验证实例:
    created(){//在这个钩子函数中取执行获取数据的方法,将验证方法作为回调传入
      getdata(check)
     }
     methods:{//在这里面,首先你得有created钩子函数中用到的那两个方法
       function getdata(callback){//向后端请求用户信息
        //这里我们假设是从后端获取数据
        setTimeout(function(){
         //假设我们获取到数据info
         var info = {
          "id":1,
          "name":'张三'
         }
         //得到数据以后执行函数方法
         callback(info)//这个就是回调函数,得到用户信息后去验证他的权限
        },1000)
     }
    function check(data){//验证用户权限
      if(data.id==1){//验证权限的条件,根据实际设定
       console.log('验证成功,可以通过')//权限通过,可以做什么
      }else{
       console.log('验证失败,禁止通行')//没有权限,可以做什么
      }
    }
     }

    总结

    以上所述是小编给大家介绍的JS中回调函数及用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对创新互联网站的支持!


    当前题目:浅析JS中回调函数及用法
    文章路径:http://cdkjz.cn/article/jdgeog.html
    多年建站经验

    多一份参考,总有益处

    联系快上网,免费获得专属《策划方案》及报价

    咨询相关问题或预约面谈,可以通过以下方式与我们联系

    大客户专线   成都:13518219792   座机:028-86922220