zoukankan      html  css  js  c++  java
  • 回调函数

    回调函数

    字面上理解下来就是,回调就是一个函数的调用过程。那么就从理解这个调用过程开始吧。
    函数a有一个参数,这个参数是个函数b,当函数a执行完以后执行函数b。那么这个过程就叫
    回调。

    其实中文也很好理解:回调,回调,就是回头调用的意思。函数a的事先干完,回头再调用
    函数b。

    其实这就是一个回调的过程,你留了一个函数b(要求女朋友给你发信息)给你女朋友,然后
    你女朋友回家,回家的动作是函数a。她必须先回到家里(函数a的内容执行完),再去给你发
    信息(执行函数b),然后你就收到了一条信息。

    这里必须清楚一点,函数b是你以参数形式传给函数a的,那么函数b就叫做回调函数。

    深入解释:函数b就是你要求你女朋友发信息给你,函数a就是你女朋友回家,而你,就是主
    程序。主程序会继续做自己的事情,你女朋友带着函数b回家,她自己回到家之后,再去操
    作函数b,函数b再来执行发信息这个动作,然后你就收到了短信。

    一般来说,执行完回调函数b,那么函数b肯定还有个执行结果,那么一般的情况是,将函数
    b的值,赋值给一个变量,或者return一下,给程序其他地方用。


    例子:

    CreateNesService.uploadTemplate(fileKey)
    .then(function(result)
    {self.memKey = result.data})

    CreateNesService.uploadTemplate是一个put请求,是异步的。那么主程序留了这个函数在这,主程序自己继续接着往下执行了。then函数就是一个回调函数,其中的result参数就是前面的CreateNesService.uploadTemplate函数的执行结果,相当于将CreateNesService.uploadTemplate函数以参数的形式传给了then函数CreateNesService.uploadTemplate函数执行完,然后发出一个promise,再来执行then函数中的代码。

  • 相关阅读:
    Python 7步机器学习
    STL容器-- map and multimap 用法
    STL容器-- forward_list 用法
    STL容器-- fixed-size array 用法
    STL容器-- deque 用法
    网站502与504错误分析
    git将一个分支的某个文件合并到当前分支
    阿里云RDS上用mysqldump导入导出
    mysqldump具体应用实例
    mysql的导入导出工具mysqldump命令详解
  • 原文地址:https://www.cnblogs.com/Jerry-spo/p/6390861.html
Copyright © 2011-2022 走看看