我只想知道这是否可以作为javascript回调函数的一个例子:
function doing_stuff(str,callback) //external *asynchronous* function
{
if(confirm(str)) callback(true);
else callback(false);
}
function main_func() //main function
{
var to_be_sent='NONE'; //return value set with default
var callback = function callback(r) //funzione di callback
{
to_be_sent=r;
}
doing_stuff('Sure?',callback); //external function call with *callback*
return to_be_sent;
}
答案 0 :(得分:3)
您似乎无法理解回调的概念。
在计算机编程中,回调是一段可执行代码,作为参数传递给其他代码,其中期望在某个方便的时候回调(执行)参数。调用可能是同步回调中的立即调用,也可能是稍后发生的,如异步回调。
在Javascript中,"一段可执行代码"可以包含在功能中。 javascript中的函数是First-Class Citizens,这意味着您可以将它们视为任何其他值,执行操作并将其作为参数传递。
同时回调可以是同步的,当被称为异步时,它们会更有意义。基本上你说的是:
嘿伙计,做你的事,花点时间,但无论你何时完成处理,请执行这段代码。
所以,回答你的问题:
是的,您有一个回调使用示例。