js中函数的参数可以是数组对象也可以是函数,当参数为函数时我们叫做回调函数

//定义回调函数
function B() {

console.log("函数B")
setTimeout("console.log('我是回调函数B')", 3000); //模仿耗时异步执行操作 
}
//定义回调函数
function C() {

console.log("函数C")
setTimeout("console.log('我是回调函数C')", 6000); //模仿耗时异步执行操作 
}

function A(C, B) {//函数A 中传入函数C和B函数作为参数

C();

B();

console.log('我是主函数');
}

//调用主函数,将函数B和函数C传进去
A(C,B);

//得到的结果

函数C
函数B

我是主函数

我是回调函数B
我是回调函数C

我们可以看出: 无论有几个函数参数都是可以执行的,所以函数参数不仅仅可以放在最后的位置,

当执行函数参数时两个函数按照顺序依次执行,如果有异步操作,异步操作按照自己的时间来执行,但不影响主函数的执行结束。

转载于:https://www.cnblogs.com/wujiajia/p/8540176.html

js中函数的参数为函数的情况即回调函数相关推荐

  1. c语言定时器回调函数的参数,定时器的简单实现即回调函数的运用

     这两天在 研究回调函数就想实现简单的定时器,如下是鄙人的程序望指教.ios #include #include using namespace std;app #define MAXNUM 25 ...

  2. C语言带参数的回调函数怎么传参,C语言如何实现回调函数

    回调函数就是就是通过一个统一的接口实现不同的功能,C语言中的回调函数就是在代码中根据所传的参数不同而调用不同的回调函数 回调函数是一个程序员不能显式调用的函数:通过将回调函数的地址传给调用者从而实现调 ...

  3. SQLAlchemy中模糊查询;JS中POST带参数跳转;JS获取url参数

    SQLAlchemy中模糊查询,如何like多个关键字 JS中POST带参数跳转 一个项目中要跳转到另外一个项目,还需要带参数 考虑到安全性的问题,最好是用POST跳转,不能再URL中拼参 所以找到了 ...

  4. js 中的构造函数,构造函数作用,构造函数和普通函数的区别

    函数的定义方式: 1.声明式函数定义: function 函数名 (){}:这种定义方式,会将函数声明提升到该函数所在作用域的最开头,也是就无论你在这个函数的最小作用域的那儿使用这种方式声明的函数,在 ...

  5. c语言变长参数 第一个参数必须吗,一种使用变长参数为C程序构造灵活回调函数的方法...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 int twice(void *arg, va_list ap) { apply_func *func = va_arg(ap, apply_func * ...

  6. c语言函数可变长参数,一种使用变长参数为C程序构造灵活回调函数的方法

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 int twice(void *arg, va_list ap) { apply_func *func = va_arg(ap, apply_func * ...

  7. Python基础知识——函数的基本使用、函数的参数、名称空间与作用域、函数对象与闭包、 装饰器、迭代器、生成器与yield、函数递归、面向过程与函数式(map、reduce、filter)

    文章目录 1 函数的基本使用 一 引入 二 定义函数 三 调用函数与函数返回值 2 函数的参数 一 形参与实参介绍 二 形参与实参的具体使用 2.1 位置参数 2.2 关键字参数 2.3 默认参数 2 ...

  8. JS中URL编码参数(UrlEncode)

    网上有很多文字作品写涉及在JS中呈现类似UrlEncode功能时都是自定义参数来呈现,其实JS中本身就有那样的参数. 参数parameter由于用类似URL的形式传过去 , 所以别直接就那样赋值 以下 ...

  9. js中的可变参数arguments与json

    一般语言中都可以实现可变参数,js中也不例外,用arguments数组即可,无须多言,但还有另外一种更简洁的方法 ,就是使用json,而无须记住参数的位置.只要记住属性名即可. 现在流行的各种js库, ...

最新文章

  1. 黎曼猜想的1/2和质子自旋的1/2会不会是一个数?
  2. Kafka参数详解及调优--生产者
  3. e2fsck -y 故障_MC2-XWHM-Y
  4. 生成器作为(快速失败)状态机
  5. mybatis动态更新xml文件后热部署,不重启应用的方法
  6. [vue] 在vue中使用this应该注意哪些问题?
  7. oracle 的进程
  8. 【萌味】小夕说,不了解动态空间增长的程序喵都是假喵(中)
  9. 可观测告警运维系统调研——SLS告警与多款方案对比
  10. js节流函数和js防止重复提交的N种方法
  11. 一个轻量级分布式RPC框架--NettyRpc
  12. springboot 优雅停机_SpringBoot 优雅停止服务的几种方法 第309篇
  13. iperf android使用方法,FW: 使用Iperf工具测试android系统网络wifi的吞吐量wifithrougput...
  14. ML/DL-复习笔记【七】- 偏差和方差
  15. python编程语言图解_Python程序运行原理图文解析
  16. 博瑞GE博越缤瑞缤越车机安装任意APP第三方软件教程
  17. 闲谈Python语言入门
  18. Unity 资源管理插件
  19. python标准库calendar判断年份是闰年和平年
  20. mysql my.cnf 生效_mysql配置文件生效顺序

热门文章

  1. 计算机怎么隐藏桌面图标,怎么隐藏电脑界面右下角的几个图标?(看图)
  2. mvn项目Quartz简单上手
  3. oracle 查看日志组切换状态_Oracle 逻辑结构篇 之 重做日志和归档日志管理(一)...
  4. pyqt5获取文本框里输入的值_实战PyQt5: 060-输入对话框QInputDialog
  5. 【若依(ruoyi)】table定制列宽
  6. MATLAB调试caffe,在MATLAB下调试Caffe
  7. 傅里叶变换处理音频c++_积分变换(1)——傅里叶级数
  8. hadoop集群搭建过程中不适用hostname发现slave,而是通过ip
  9. Python这些操作,逆天且实用!
  10. 【好消息】Python和Excel终于可以互通了!!