初学js的时候,被回调函数搞得很晕,现在回过头来总结一下什么是回调函数。什么是JS?(点击查看)

下面先看看标准的解释:

<script language="javascript">
02      function SortNumber( obj, func )                    // 定义通用排序函数
03      {
04          // 参数验证,如果第一个参数不是数组或第二个参数不是函数则抛出异常
05          if( !(obj instanceof Array) || !(func instanceof Function))
06          {
07              var e = new Error();                       // 生成错误信息
08              e.number = 100000;                         // 定义错误号
09              e.message = "参数无效";                  // 错误描述
10              throw e;                                        // 抛出异常
11          }
12          for( n in obj )                                     // 开始排序
13          {
14              for( m in obj )
15              {
16                  if( func( obj[n], obj[m] ) )            // 使用回调函数排序,规则由用户设定
17                  {
18                      var tmp = obj[n];                      // 创建临时变量
19                      obj[n] = obj[m];       // 交换数据
20                      obj[m] = tmp;
21                  }
22              }
23          }
24          return obj;                                         // 返回排序后的数组
25      }

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

  字面上的理解,回调函数就是传递一个参数化的函数,就是将这个函数作为一个参数传到另一个主函数里面,当那一个主函数执行完之后,再执行传进去的作为参数的函数。走这个过程的参数化的函数 就叫做回调函数。换个说法也就是被作为参数传递到另一个函数(主函数)的那个函数就叫做 回调函数

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

回调函数应用场景多用在使用 js 写组件时和耗时操作上面,尤其是组件的事件很多都需要回调函数的支持。

如果还是不明白,下面看一下代码:

<script type="text/javascript">function title(value){//这是回调函数!!!!alert(value);}function main(title, value){//这个主函数:在参数列表中,title作为一个参数传递进来,也就是上文说的 参数化函数;然后value这个值正是title()函数中所需要的。alert("我是主函数");title(value);//结果为:'我是回调函数'。——————然后在这行这个title(),它就是回调函数咯。}main(title,"我是回调函数");//title参数加上()后,就会变回一个函数,并会被执行一次。//PS:看清楚,调用的是main()函数,意味着先执行main(),这时已经执行了主函数,title()被main()在函数体中执行了一次,因此title()是回调函数。</script>

回调函数易混淆点——传参:

一,将回调函数的参数作为与回调函数同等级的参数进行传递。

二,回调函数的参数在调用回调函数内部创建。

如果还有不懂的,请在下方留言,小编一定第一时间回复。

JS回调函数——简单易懂有实例相关推荐

  1. 【转】JS回调函数--简单易懂有实例

    JS回调函数--简单易懂有实例 初学js的时候,被回调函数搞得很晕,现在回过头来总结一下什么是回调函数. 我们先来看看回调的英文定义:A callback is a function that is ...

  2. js回调函数的理解(轉)

    js回调函数(callback)理解Mark!讲之前说一句function say(){alert(,,,,,,,,)}var say=function (){alert(,,,,,,,)}var s ...

  3. PHP - 回调函数概念与用法实例分析 - 学习/实践

    1.应用场景 主要用于理解回调函数的概念, 对比JavaScript中的回调函数, 更加深刻理解回调函数的本质, 以及如何高效使用~~~ 2.学习/操作 1. 文档阅读 https://www.jb5 ...

  4. node.js 回调函数

    Node.js 回调函数 Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了. 回调函数在完成任务后就会被调用,Node 使用了大量的回调函数, ...

  5. js回调函数获取异步返回值

    js回调函数获取异步返回值 1.尝试获取异步返回值 function test(){var res = 0;setTimeout(function(){res = 1;},1000)return re ...

  6. JS回调函数(callback)

    在使用Jquery的时候,用到Callback(),回调函数的概念.而且很多. 比如: $.ajax({url:"test.json",type: "GET", ...

  7. html js 回调函数,js中回调函数的学习笔记

    回调函数是什么在学习之前还真不知道js回调函数怎么使用及作用了,下面本文章把我在学习回调函数例子给各位同学介绍一下吧,有需了解的同学不防进入参考. 回调函数原理: 我现在出发,到了通知你" ...

  8. mysql.js回调函数_js回调函数(callback)

    Mark! js学习 不喜欢js,但是喜欢jquery,不解释. 自学jquery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速google之,发现原来中文翻译成回调.也就是回调函 ...

  9. js 回调函数小例子

    js 回调函数小例子 1 <script> 2 //将函数作为另一个函数的参数 3 function test1(){ 4 alert("我是test1"); 5 } ...

最新文章

  1. mysql internal_MySQLInternal笔记
  2. C++类为什么使用private?------封装性
  3. Win8 Hyper-V虚拟机 安装运行Ubuntu教程
  4. window10使用 Hyper-V 创建ubuntu虚拟机并使用增强会话功能
  5. 【送书】2021年哪些好书值得读(小姐姐配音)
  6. Hexo-theme-Fluid Material Design 风格的 Hexo 主题
  7. Java多线程学习三十四:使用 Future 有哪些注意点?Future 产生新的线程了吗
  8. loadView 和 viewDidLoad、viewDidunload 的区别
  9. 王招治计算机财务管理,计算机财务管理——以Excel为分析工具
  10. android toolbar 搜索框,SearchView配合RecyclerView实现分页搜索过滤关键字
  11. [自学考试] [02142数据结构导论] Part1 概论
  12. ARX中各种坐标系及Transfrom操作相关
  13. 200行Py代码带你实现打飞机
  14. 书论92 侯仁朔《侯氏书品》
  15. web漏洞扫描器-Burpsuite 常规测试
  16. Cypress系列(50)- wrap() 命令详解
  17. 数字化时代下,智能运维全栈监控解决方案及案例盘点
  18. linux下tp驱动程序,Linux安装TP-Link TL-WN722N 驱动
  19. elasticsearch分词器Jcseg安装手册
  20. error creating overlay mount to /var/lib/docker/overlay2

热门文章

  1. 再见了微服务!K8S 云原生架构已成气候!
  2. mysql 什么是幻读_何为幻读?MySQL又是如何解决幻读的?
  3. SAP云产品部署方式及定价模型
  4. 小菜鸡的html初步教程(第十三章 使用WEB字体)
  5. 机器学习预测的概率如何表示?
  6. 记录我的缺点、优点、记录生活方式,总结并不断优化自己
  7. MATERIALISE_MAGICS_TOOLING_EXPERT_V2.1.1-LND
  8. JSP页面兼容IE7
  9. Echarts图表大小自适应浏览器窗口大小
  10. macbook pro 突破校园网inode客户端限制分享网络