您的位置:首页 > Web前端 > JavaScript

js回调函数的理解

2015-03-10 08:37 162 查看

一、什么是Javascript 回调函数?

1、函数和其他数据一样可以被赋值,删除,拷贝等,也可以把函数作为参数传入到另一个函数中。回调函数,其实就是把函数作为参数传到函数中去运用。

2、回调函数具体的定义为:函数A作为参数(函数引用)传递到另一个函数B中,并且这个函数B执行函数A。我们就说函数A叫做回调函数。如果没有名称(函数表达式),就叫做匿名回调函数。

3、因为函数在Javascript中是第一类对象,我们像对待对象一样对待函数,因此我们能像传递变量一样传递函数,在函数中返回函数,在其他函数中使用函数。当我们将一个回调函数作为参数传递给另一个函数是,我们仅仅传递了函数定义。我们并没有在参数中执行函数。我们并不传递像我们平时执行函数一样带有一对执行小括号()的函数。

4、需要注意的很重要的一点是回调函数并不会马上被执行。

二、回调函数将在以下几个方面帮助你:

1、 避免重复代码
2、 在你拥有更多多功能函数的地方实现更好的抽象(依然能保持所有功能)
3、 让代码具有更好的可维护性

4、使代码更容易阅读

5、 编写更多特定功能的函数

三、回调函数的使用场合

1、资源加载:动态加载js文件后执行回调,加载iframe后执行回调,ajax操作回调,图片加载完成执行回调,AJAX等等。

2、链式调用:链式调用的时候,在赋值器(setter)方法中(或者本身没有返回值的方法中)很容易实现链式调用,而取值器(getter)相对来说不好实现链式调用,因为你需要取值器返回你需要的数据而不是this指针,如果要实现链式方法,可以用回调函数来实现。

3、setTimeout和setInterval方法

4、异步调用(例如读取文件,进行HTTP请求,等等)

文章转载自: js回调函数 http://www.studyofnet.com/news/705.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: