![](/img/trans.png)
[英]Why does wrapping a callback in an anonymous function change the meaning of 'this'?
[英]callback function meaning
javascript中回调函数的含义是什么?
JavaScript的“回调”是可以传递给其他函数(如函数指针或委托函数)的函数对象,然后在函数完成时或需要时调用。 例如,你可以有一个主函数,你可以传递一个它将调用的函数...
主要功能可以如下所示:
function mainFunc(callBack)
{
alert("After you click ok, I'll call your callBack");
//Now lets call the CallBack function
callBack();
}
你会这样称呼它:
mainFunc(function(){alert("LALALALALALA ITS CALLBACK!");}
要么:
function thisIsCallback()
{
alert("LALALALALALA ITS CALLBACK!");
}
mainFunc(thisIsCallback);
这在javascript库中广泛使用。 例如,jQuery的animation()函数可以传递这样的函数,以便在动画结束时调用。
将回调函数传递给其他函数并不能保证它将被调用。 执行回调调用( calBack()
)完全取决于该函数的实现。
甚至名称“回叫”也是不言自明的...... =)
它只是一个函数的名称,应该在某些东西之后回调。
它经常与XMLHttpRequest一起使用:
var x = new XMLHttpRequest();
x.onreadystatechange = function(){
if(x.readyState == 4){
callbackfunction(x.responseText);
}
}
x.open('get', 'http://example.com/', true);
x.send(null);
callbackfunction
函数只是一个普通函数,在这种情况下:
function callbackfunction(text){
alert("I received: " + text);
}
除了作为一个函数之外,回调函数是异步应用程序设计的推动者。
在等待时,可能会锁定线程或单线程系统上的整个PC或UI,而不是在调用函数的异步模式下,它会在完成之前返回,然后返回,而不是调用函数并等待返回值你可以退出代码(返回调用操作系统,空闲状态,运行循环,等等......)。 然后,OS或异步函数会调用您的代码。 您希望它回调的代码通常封装在称为“回调函数”的内容中。 还有其他用途,但这是OOP UI框架中的常见用途。
使用最新的iOS 4.x,您还可以使用无名“块”进行回调。 但是没有块的语言(或其他名称下的匿名闭包)使用函数进行函数回调。
您只需使用以下语句后退按钮的onClick事件:
OnClick="javascript:history.go(-1)"
它会帮助您回到最近访问过的上一页。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.