更新时间:2022-11-21 来源:黑马程序员 浏览量:
项目开发中,若想要函数体中某部分功能由调用者决定,此时可以使用回调函数。所谓回调函数指的就是一个函数A作为参数传递给一个函数B,然后在B的函数体内调用函数A此时,我们称函数A为回调函数。其中,匿名函数常用作函数的参数传递,实现回调函数为了让读者更加清晰地了解什么是回调函数,下面我们以算术运算为例进行演示。
function cal(numl, num2, fn) { return fn(numl, num2); } console.log(cal(45, 55, function(a, b) { return a + b; })); console.log(cal(10, 20, function(a, b) { return a * b; }));
上述第1~3行代码定义了cal()函数,用于返回fn回调函数的调用结果。第4~6行代码用于调用cal()函数,并指定该回调函数用于返回其两个参数相加的结果,因此可在控制台查看到结果为 100。同理,第7~ 9行代码在调用 cal0 函数时,将回调函数指定为返回其两个参数相乘的结果,因此可在控制台查看到结果为 200。
从以上案例可以看出,在函数(如cal()函数)中设置了回调函数后,可以根据调用时传递的不同参数(如相加的函数,相乘的函数等),在函数体中特定的位置实现不同的功能相当于在函数体内根据用户的需求完成了不同功能的定制。
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19