什么是回调函数:

//callback是一个函数
A callback is a function
//作为另一个函数的参数
that is passed as an argument to another function and
//当父函數执行完成之后,它(回调函数)才被执行
is executed after its parent function has completed.总的来说就是回调函数作为参数传到函数的参数里面,先执行函数,再执行回到函数。
demo:
parent(callback){  callback()
}

小程序js:

onLoad: function (options) {this.c(this.a)this.c(this.b)},a() {console.log("a")},b() {console.log("b")},c(callback) {console.log("c")console.log(callback)callback()},

打印结果:

第一个c函数:

c

打印函数

a

第二个函数:

c

打印函数

b

为什么使用函数作为参数呢?而不是直接写在函数里面呢?

这样的话就是为了有很好的扩展性。

因为 一个函数a去要调用另一个函数c直接写在里面没有任何问题。

如果 一个函数b也要要调用另一个函数c直接写在里面没有啥问题。

但是一旦很多就像是ajax(wx.request)请求,岂不是太麻烦了。

那你如果一个函数a根据条件不同执行不同的函数c呢

如果像函数a一样的函数有多个呢,那岂不是光写代码了,太麻烦了。

所以用函数作为参数非常牛逼。

说到这里那么回调函数的参数怎么写的呢?

onLoad: function (options) {this.c(3,this.b,2)},a() {console.log("a")},b(b) {console.log("b")return b*b;},c(num,callback,can) {console.log("c")console.log(callback)var  res =  callback(can)console.log(num+res)},

结果:

一看就懂。

具体怎么写就靠你了,加油!

小程序中回调函数(callback)的理解相关推荐

  1. 微信小程序之回调函数

    微信小程序之回调函数 1.首先什么是回调函数? 在经历一系列研究之后,我总结了一下,就是A函数作为B函数的参数,B函数执行完之后将返回的结果作为A函数的参数,再执行A函数.听起来很难懂,那就举个栗子吧 ...

  2. 微信小程序之回调函数中用setData

    起因: 想在某个回调函数中用setData 改变值 出错的代码: Page({data: {userinfo : 'notknow'},getuser1 : function(){console.lo ...

  3. 回调是什么?我对编程里回调函数callback的理解

    从一开始接触回调机制到现在,一直不太明白这其中的过程和原理.直到最近在网上混了很久,才突然明白. 这对于我这个Android小白还是一件很值得开心的事情. 今天特此在这里写下来我对回调机制的愚见,也做 ...

  4. 微信小程序中箭头函数的使用实例

                  要求5秒后动态增加数据源 代码: onReady: function () {console.log("页面渲染完成",this) setTimeout ...

  5. 微信小程序中自定义函数的学习使用

    新手,最近在给学校搞个党费计算器.需要自己定义函数来实现某个功能. 1.无参函数: 函数都是写在js文件里面的. Page({data:{income1:'0',},cal:function(e){t ...

  6. 微信小程序中睡眠函数怎么使用?

    setTimeout((function callback() {this.setData({bodySubmitFlag:false}) }).bind(this), 2000);

  7. 理解javascript中的回调函数(callback)【转】

    在JavaScrip中,function是内置的类对象,也就是说它是一种类型的对象,可以和其它String.Array.Number.Object类的对象一样用于内置对象的管理.因为function实 ...

  8. 理解javascript中的回调函数(callback)

    理解javascript中的回调函数(callback) 在JavaScrip中,function是内置的类对象,也就是说它是一种类型的对象,可以和其它String.Array.Number.Obje ...

  9. 彻底理解JavaScript中回调函数 (推荐)

    在javascript中回调函数非常重要,它们几乎无处不在.像其他更加传统的编程语言都有回调函数概念,但是非常奇怪的是,完完整整谈论回调函数的在线教程比较少,倒是有一堆关于call()和apply() ...

最新文章

  1. android w700
  2. Kafka Eagle 源码解读
  3. docker 容器互访三种方式
  4. linux下字节对齐
  5. Vi编辑器中查找替换
  6. 有关可变形部件模型(Deformable Part Model)的一些说明
  7. js中当等于最小值是让代码不执行_网页中JS函数自动执行常用三种方法
  8. 2018华工计算机考研分数,2018年华南理工大学考研复试分数线
  9. java ios压缩_iOS与Java服务器GZip压缩问题【转】
  10. 2、easyUI-创建 CRUD可编辑dataGrid(表格)
  11. dbnetlib不存在或拒绝访问_idou老师教你学Istio 16:如何用 Istio 实现微服务间的访问控制...
  12. 如何在 Mac 上的“地图”中自定地图视图?
  13. MotoSimEG-VRC软件:安川机器人弧焊焊接离线编程与虚拟仿真
  14. 【地理坐标系、大地坐标系与地图投影与重投影详解】
  15. JMH基准测试,看我怎么用它来测试mongodb的数据加载性能
  16. 电脑无故重启很卡(深度相机也用不了)
  17. 第四十一章 2D游戏(2)
  18. java获取明天的日期_使用java获取昨日的日期,今日的日期,明日的日期
  19. 【绊脚石】安装pycocotools和lap失败
  20. 超级条理清晰代码混淆(直接搬用即可)

热门文章

  1. 如何在Mac电脑中输入多种标点符号和文字表情
  2. 小米蓝牙鼠标在Ubuntu18.0.4下反应迟钝问题的解决
  3. anaconda点击launch无反应
  4. Java 有n 盏灯,编号1~n(0<n<100)。第1 个人把所有灯打开,第2 个人按下所有编号为2 的倍数的开关(这些灯将被关掉),第3 个人按下所有编号为3 的倍数的开关(其中关掉的灯将被打开
  5. 联想笔记本不显示电量百分比 lenovobatterygaugepackage.dll
  6. 基于AD20的DS3231的时钟电路设计
  7. 陕西2022农民丰收节 国稻种芯:主场安康稻渔丰收节启动
  8. 非Lumia 950/XL机型 强行开启continuum教程
  9. 过去几轮熊市是怎么牛回来的?这轮熊市的出路又在那里?
  10. Selenium 最强反反爬方案来了!