javascript回调函数

回调函数

1.什么是回调函数

回调函数是作为参数传递给另一个函数的函数.首先我们来分析这句话.去除中间的修饰词,'回调函数是函数',它是什么样的函数,'它是另一个函数的参数'.
首先要将函数能够当做参数,因为在js里,函数也是对象,其实函数是用Function()构造函数创建的对象.例如下面这样
var fun =new Function(‘arg1’, ‘arg2’, ‘return arg1*arg2’)

2.回调函数的执行

其实我觉得在回调函数里难理解的不是它的概念,应该是它的执行时间,同时这也是它的精髓所在,正是因为它的执行时间与普通函数的区别,它才会被用广泛用于异步操作,提供了js的异步解决方案,所以现在可以应用在服务器端,比如现在很火的nodejs.
首先要明确,回调函数不会被马上执行,它会在包含它的方法内的某个特定时间执行.
例如 文件,图片加载完成后回调
DOM事件操作,例如onclick(function(){alert(‘我是回调函数’)})方法
获取服务器数据的AJAX请求成功后
setTimeout方法等.

3.回调函数的应用场景

回调函数在node js中广泛应用,因为从服务器获取数据,以及向服务器发送数据,这个过程其实是很漫长的,对于js这种单线程语言来说,为了避免无谓的等待,只能用回调函数的方式来处理各种异步的操作.当然当回调函数有多层嵌套的时候,就会陷入'回调地狱'.es7标准提出了近乎完美的解决方案async方法,现在有一些第三方库可以支持这种标准了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值