关闭

js中的回调函数

时间: 2019-12-07阅读: 463标签: 回调

一般我们使用函数,在顺序上是先定义函数,在去调用它。而回调函数则在写代码的过程中反了过来,先去设计函数的调用场景,然后到了需要调用的时候再去定义它。

 

但无论如何,函数的执行过程都是一样的,某个对象调用一个已经被定义了的函数,即便到了调用的时候才去定义,但还是得等定义好了才能进行调用不是吗?计算机的执行过程是一样的。所谓的回调,不过是针对人而言的。

 

匿名的回调函数里面能不能在其括号里进行参数传递?答案是可以的,函数的传参有两个地方共同实现,首先是定义函数时,然后是调用函数时,但在js里面,似乎定义函数时写的参数不是那么重要,你写不写都无所谓,所以关键便在于调用函数的时候传入的参数。我们都知道,回调函数在写法上是先进行调用场景编程的,所以如果在函数中调用回调函数时没有进行传参,那么你在通过匿名函数定义它的时候,传入什么都是无用的,因为你调用的时候什么也没穿进去呀,就像你给朋友的信中说我去看你的时候会带礼物,但是真正到了你去看他的时候却什么也没有带,他当然什么也收不到呀。只要在调用回调函数的地方进行了传参,那么在定义回调函数的时候括号里写不写参数都一样,反正在调用的时候会传进来的。

 

这里比较绕的地方在于,其实我们在用匿名函数去定义回调函数的时候,其实就是到了调用它的时候了,所以你在之前设计回调函数的调用之时写在括号里面的参数,此时必须已经存在于调用回调函数的对象的作用域中,否则巧妇难为无米之炊,报错是已经是很委婉的抗议方式了。

站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/7202

关闭

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!