Javascript 与标准函数相比,回调函数是什么

Javascript 与标准函数相比,回调函数是什么,javascript,callback,Javascript,Callback,什么是回调函数?何时使用回调函数而不是标准的非参数化函数?来自维基百科: 回调是作为参数传递的一段可执行代码 调用(执行)参数的其他代码 在方便的时候。调用可以是即时的,就像在 同步回调,或者它可能在以后发生,如在 异步回调。在所有情况下,目的都是指定 作为实体的函数或子例程,取决于 语言,或多或少类似于一个变量 基本上,回调函数是作为参数传递给其他事件或函数的函数。它允许代码在选择参数时执行回调函数 例如: function my_callback(evt){alert("Button cli

什么是回调函数?何时使用回调函数而不是标准的非参数化函数?

来自维基百科:

回调是作为参数传递的一段可执行代码 调用(执行)参数的其他代码 在方便的时候。调用可以是即时的,就像在 同步回调,或者它可能在以后发生,如在 异步回调。在所有情况下,目的都是指定 作为实体的函数或子例程,取决于 语言,或多或少类似于一个变量

基本上,回调函数是作为参数传递给其他事件或函数的函数。它允许代码在选择参数时执行回调函数

例如:

function my_callback(evt){alert("Button clicked!");}

$('#button').click(my_callback)

我们将函数
my_callback
传递给事件代码,然后当jQuery确定它是合适的时,它可以将自己的事件对象传递给函数

回调函数用于以后需要执行一段代码时。在绑定事件处理程序或从ajax帖子返回时,在javascript中最常看到这种情况。基本上是将函数作为参数传递。该函数将在事件激发时执行。你可以在下面的页面上看到一个例子


在本例中,
modifyText
是一个传递给
addEventListener
函数的函数。当点击
外部
按钮时,
修改文本
内部的代码将执行

一个
回调
就像你告诉某人
完成工作后给我回电话一样。这意味着您不想一直在那里等待,但当您的朋友(可能是数据库访问功能)完成他们的工作时,仍然需要做一些事情

JavaScript statements are executed line by line. However, with effects, the next line of code can be run even though the effect is not finished. This can create errors.
为了消除这些错误,我们使用回调函数

回调函数是当事件触发时将执行的函数。这在许多javascript函数中使用,如
addEventListener()
等。它也称为回调模式

检查链接以了解和了解它

类似的代码

var result = db.query('select  * from T'); //use result - Standard function
db.query('select * from T',function(result){
    //use result - Callback function
});
您的软件什么也没做,您只是在等待数据库响应<代码>这会以某种方式阻止整个过程或意味着多个执行堆栈。
但是像这样的一行代码

var result = db.query('select  * from T'); //use result - Standard function
db.query('select * from T',function(result){
    //use result - Callback function
});
允许程序立即返回事件循环


在此执行过程中,服务器发出该请求并继续执行其他操作,
当请求返回时(在数百万个时钟周期之后),您可以执行回调,您所需要的只是指向回调的指针。

函数
回调之间的“语言级别”没有区别。就Javascript而言,它们是相同的东西,它们都是一个
函数


函数的使用会产生不同。如果在代码中调用它,它将被视为一个
函数
,如果它作为参数传递给另一个函数,以后将使用它,它将被视为一个
回调

为什么像“回调”一样调用它?它与任何其他函数都不同?什么是“标准的无参数化函数”?不接受参数的函数