回调函数

回调函数分为同步回调函数和异步回调函数。

同步回调函数

回调函数通常就是当父函数执行完后,再执行通过传参进来的函数,当然也可以不传参,直接在父函数内部调用回调函数
:立即执行回调,执行完回调代码才会继续往下执行


function a(callback) {alert("我是parent函数a!");alert("调用回调函数");callback();
}function b() {alert("我是回调函数b");}function c() {alert("我是回调函数c");}function test() {a(b);a(c);
}

以上这种方式是讲回调函数写在父函数外面,以参数的形式传递进入父函数,这样就可以比较灵活,a函数的回调函数可以是b函数,也可以是c函数


function a() {alert("我是parent函数a!");alert("调用回调函数");b();
}
function b() {alert("我是回调函数b");
}
a();

以上就是直接把回调函数写在父函数内部,当然这样的话就失去了灵活性,回调函数就只能是b函数


异步回调函数

如ajax()的异步回调,当发送请求后服务器响应需要一定的时间,异步回调可以是代码继续执行,当服务器请求成功,就会回过来调用此函数,这样就可以提高浏览器的加载效率,ajax因此也成为了浏览器优化的一大工具

$.ajax({type: "GET",data: {},url: "combobox_data.json",success: function () {console.log('我是请求成功后执行的回调函数'); //打印 "我是请求成功后执行的回调函数"},error: function () {console.log('我是请求失败后执行的回调函数'); //如果失败,打印 "我是请求失败后执行的回调函数"}
})

以上是ajax中的回调函数,当请求成功后,函数就会执行,当然请求失败就会执行error中的回调函数
详情可见ajax异步回调详情

JavaScript的回调函数及Ajax中的回调函数相关推荐

  1. Ajax中的beforeSend函数使用

    Ajax中的beforeSend函数使用 代码如下 在用ajax请求时,没有返回前会出现前出现一个转动的loading小图标或者"内容加载中-",用来告知用户正在请求数据.这个就可 ...

  2. python文件定位函数_C语言中文件定位函数总结

    C语言中文件定位函数主要是:fseek, ftell, fsetpos, fgetpos. 先来讲前两个函数,这是最基本的定位函数: fseek函数:能把文件指针移动到文件任何位置,其原型是:int ...

  3. rectpuls函数 matlab,Matlab中的rectpuls函数解析

    Matlab中的rectpuls函数解析 Matlab中的rectpuls函数解析 1.先看Matlab中的解释: This MATLAB function returns a continuous, ...

  4. Oracle中to_char函数和MySQL中的str_to_date函数区别

    标题Oracle中to_char函数和MySQL中的str_to_date函数 1. str_to_date()----->相当于Oracle中的to_char(): 字符串转换为日期格式 (1 ...

  5. 主成分分析函数Matlab,matlab中主成分分析的函数1

    princomp函数,pcacov函数,pcares函数,barttest matlab中主成分分析的函数 1. princomp函数 功能:主成分分析 格式:PC=princomp(X) [PC,S ...

  6. ajax - post(),AJAX中的$.post()函数

    回答 when(someAjaxDfd).then(function(data){/这里的参数为什么是data,因为在下面的ajax函数中,我把data当成resolve()的参数传过来了 someA ...

  7. php new对象 调用函数,关于JS中new调用函数的原理介绍

    这篇文章主要介绍了关于JS中new调用函数的原理介绍,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 JavaScript 中经常使用构造函数创建对象(通过 new 操作符调用一个函数) ...

  8. C中的qsort函数和C++中的sort函数的理解与使用

    一.qsort()函数 原型:_CRTIMP void __cdecl qsort (void*, size_t, size_t,int (*)(const void*, const void*)); ...

  9. python中mat函数_python matplotlib中的subplot函数使用详解

    python里面的matplotlib.pylot是大家比较常用的,功能也还不错的一个包.基本框架比较简单,但是做一个功能完善且比较好看整洁的图,免不了要网上查找一些函数.于是,为了节省时间,可以一劳 ...

  10. python中round函数参数_python中关于round函数的小坑

    round函数很简单,对浮点数进行近似取值,保留几位小数.比如 >>> round(10.0/3, 2) 3.33 >>> round(20/7) 3 第一个参数是 ...

最新文章

  1. ubuntu 设置开机执行脚本_ubuntu-18.04 设置开机启动脚本
  2. 什么是VMware vSphere
  3. 实验四十一、×××(IPSec)的配置
  4. for in for of区别_Python 第5课:for…in循环黄金搭档之列表
  5. PyTorch | 通过torch.arange创建等差数列张量 | torch.arange()如何使用?torch.arange()使用方法 torch.arange()举例说明
  6. Vue安装与IDE HBuilder安装(一分钟读懂)
  7. redis持久化、内存优化、过期、LRU内存
  8. python进阶学习笔记(四)--多线程thread
  9. 打造最便捷的异步分页技术(提供下载)
  10. fckeditor for java_基于java使用FCKeditor
  11. 软件测试用例的书写方式以及测试模板
  12. 项目过程管理(八)延期和需求变更
  13. (转载)SoftIce的安装、配置以及一些基本操作
  14. 求助matlab崩溃问题的解决方案
  15. hit_training_20140403
  16. 修改无线网密码后服务器拒绝访问,路由器重设密码怎么上不了网
  17. CF1463F Max Correct Set(取小样法+状压 DP)
  18. 用 Python selenium爬取股票新闻并存入mysql数据库中带翻页功能demo可下载
  19. 解决透视变换后图片信息丢失的问题,附程序
  20. 投影仪不能显示桌面图标(文字)

热门文章

  1. 微积分(一)——二重积分与三重积分笔记
  2. aria2 配置教程
  3. 大学计算机一级等级考试题,大学计算机一级考试试题.doc
  4. Win10新电脑里的设备和驱动器下如何分盘
  5. java短信验证平台,Java实现发送短信验证码功能
  6. Centos7 安装谷歌浏览器
  7. 天正的计算机快捷命令大全,天正建筑快捷键大全:天正建筑cad快捷键命令大全...
  8. 自动驾驶(二十)---------Waymo数据集
  9. 数学建模好学吗?半年带出几十位省奖和十几位国奖
  10. 关于NX UG11.0在visual studio中不能创建模板的问题