JavaScript 回调

2025年3月17日 | 阅读 3 分钟

回调函数可以定义为作为参数传递给另一个函数的函数。不要将回调与关键字联系起来,因为回调只是传递给函数的参数的名称。

换句话说,我们可以说作为参数传递给另一个函数的函数称为回调函数。回调函数在外部函数完成后运行。它有助于开发异步 JavaScript 代码。

JavaScript 中,创建回调函数非常简单。也就是说,我们只需将回调函数作为参数传递给另一个函数,并在任务完成后立即调用它。回调主要用于处理异步操作,例如注册事件监听器、从文件中获取或插入数据,等等。

现在,让我们通过一些示例来说明如何创建回调函数。

这是一个异步回调函数的示例。异步性可以定义为,如果 JavaScript 需要等待操作完成并在此等待期间执行程序的其余部分。

示例 1

在此示例中,有两个函数 **getData( x, y, callback)** 和 **showData()**。在这里,我们调用 **getData()** 并传入 **showData();**,也就是说,我们将其与两个参数一起作为 **getData()** 函数的第三个参数传递。结果,**getData()** 被调用并带有所提供的参数,包括回调函数。

**getData()** 函数显示两个数字的乘法,一旦完成,回调函数就会执行。在输出中,我们可以看到 **showData()** 函数的数据在 **getData()** 函数的输出之后打印。

输出

JavaScript callback

回调通常用于在异步操作完成后继续执行 - 这些称为**异步回调**。

现在,在下一个示例中,我们将看到一个立即执行的回调。

示例 2

这是另一个使用回调函数的示例。这是一个立即执行的同步回调函数的示例。

这里有两个函数:**getData(callback)**,它使用 prompt 框从用户那里获取输入;以及 **showData(name, amt)**,它使用 alert 对话框显示用户输入的数据。

输出

执行上述代码后,将显示一个 prompt 框,询问用户的姓名 -

JavaScript callback

输入姓名后,当用户单击“确定”时,将显示另一个 prompt 框,询问要输入的金额 -

JavaScript callback

输入金额后,当用户单击“确定”时,将显示一个 alert 框。它显示输入的用户名和金额。

JavaScript callback