js回调函数例子_c回调函数简单例子

js回调函数例子_c回调函数简单例子回调函数每一个异步任务返回一个Promise对象,该对象有一个then方法,允许指定回调函数

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

回调函数

回调函数是一段可执行的代码段,它作为一个参数传递给其他的代码,其作用是在需要的时候方便调用这段(回调函数)代码

js中函数=对象,对象可以作为参数传给函数。
函数可以作为参数给一个函数,这个参数就是回调函数

使用

例子1

回调函数是异步操作最基本的方法。

下面是两个函数f1和f2,编程的意图是f2必须等到f1执行完成,才能执行。如果f1是异步操作,f2会立即执行,不会等到f1结束再执行。

function f1() { 
   
}

function f2() { 
   
}
f1();
f2();

Jetbrains全家桶1年46,售后保障稳定

改写回调

function f1(callback) { 
   
  callback();
}

function f2() { 
   
}

f1(f2);

例子2

function add(num1, num2, callback){ 
   
	var sum = num1 + num2;
	callback(sum);
}

function print(num){ 
   
	console.log(num);
}

add(1, 2, print);		//=>3

例子3

匿名回调函数

function add(num1, num2, callback){ 
   
	var sum = num1 + num2;
	callback(sum);
}

add(1, 2, function(sum){ 
   
	console.log(sum);		//=>3
});

回调函数优缺点

  • 优点是简单、容易理解和实现
  • 缺点是不利于代码的阅读和维护,各个部分之间高度耦合(coupling),使得程序结构混乱、流程难以追踪(尤其是多个回调函数嵌套的情况),而且每个任务只能指定一个回调函数。

使用场景

  • 异步编程
  • 事件监听、处理
  • setTimeout、setInterval方法

参考链接

https://javascript.ruanyifeng.com/advanced/single-thread.html#toc2
https://www.w3cplus.com/javascript/Sexy-Javascript-understand-the-callback-function-with-the-use-of-Javascript-in.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/230917.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 计算机定时关机命令,定时关机命令,小编教你怎么使用命令行定时关机

    计算机定时关机命令,定时关机命令,小编教你怎么使用命令行定时关机当我们在操作电脑的时候,有时会有需要定时关机,或者不在电脑前操作是需要过段时间自动关机,但是没有自带的定时关机软件,很多电脑用户又不喜欢安装第三方软件来完成该操作。那么怎么定时关机?下面,小编给大家带来了使用命令行定时关机的图文。有时候,下载一个东西,但是又要关闭电脑睡觉了,但是又想等东东下载好了,才去睡觉,想想如果能定时关机就好了。作为程序员的我,有时候就是作践自己啊,那怎么使用命令行定时关机?…

    2022年5月15日
    40
  • jmespath(1)基础语法

    jmespath(1)基础语法前言JMESPath是JSON的查询语言。您可以从JSON文档中提取和转换元素官方文档:https://jmespath.org/tutorial.html基本表达式JMESPath用的最多的

    2022年7月28日
    3
  • 第k短路径_典型的分类算法K均值

    第k短路径_典型的分类算法K均值给定一张 N 个点(编号 1,2…N),M 条边的有向图,求从起点 S 到终点 T 的第 K 短路的长度,路径允许重复经过点或边。注意: 每条最短路中至少要包含一条边。输入格式第一行包含两个整数 N 和 M。接下来 M 行,每行包含三个整数 A,B 和 L,表示点 A 与点 B 之间存在有向边,且边长为 L。最后一行包含三个整数 S,T 和 K,分别表示起点 S,终点 T 和第 K 短路。输出格式输出占一行,包含一个整数,表示第 K 短路的长度,如果第 K 短路不存在,则输出 −1。数据范围

    2022年8月10日
    2
  • Vue:router的beforeEach是什么「建议收藏」

    Vue:router的beforeEach是什么「建议收藏」来自:https://router.vuejs.org/zh/guide/advanced/navigation-guards.html#全局守卫正如其名,vue-router提供的导航守卫主要用来通过跳转或取消的方式守卫导航。有多种机会植入路由导航过程中:全局的,单个路由独享的,或者组件级的。记住参数或查询的改变并不会触发进入/离开的导航守卫。你可以通过观察$route对象来应对这…

    2022年6月17日
    25
  • 网页升级中每天自动更新什么意思_快照搜索

    网页升级中每天自动更新什么意思_快照搜索网站被收录是百度蜘蛛爬行、记录、筛选的结果。网站被爬行后会在搜索引擎数据库中留下数据,当判断收录的内容达到用户要求质量时,网站的快照才会被释放出来,而快照的时候很多时候都是最初的爬行时间。这也是我们很多站长发现被收录后,快照时间不是当天时间的原因了。  在我们的认知中,每次百度快照的更新都是搜素引擎对网站数据的一次爬行收录过程,也就意味着更新就会带来网站排名的微调动。所以,更多时候

    2022年9月1日
    2
  • Iocomp .NET WinForms OPC Crack「建议收藏」

    Iocomp .NET WinForms OPC Crack「建议收藏」Iocomp.NETWinFormsOPC包Iocomp.NETWinFormsOPCPack是一款独立产品,可将OPC功能添加到任何.NET控件。Ω578867473它还包括连接到Iocomp.NETWinForm控件上的复杂属性的高级功能。所有许可证购买都包括1年支持和维护。支持32位和64位Window操作系统。内置自定义属性编辑器,便于设置。100%托管代码与所有.NET语言兼容。所有属性、方法和事件的完整代码示例Io

    2022年7月25日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号