了解 JavaScript 中的回调
回调是作为参数传递给其他函数并在稍后执行的函数。它们允许您在执行另一个函数时的特定点执行一段代码,而不必知道该代码的确切时间或位置。
在 JavaScript 中,回调通常用于处理异步操作,例如创建 HTTP请求或设置计时器。回调函数作为参数传递给主函数,并在异步操作完成时执行。
这里是在 JavaScript 中使用回调函数的示例:
```
function makeRequest(callback) {
// Make an HTTP request here
// ...
callback();
}
makeRequest(function() {
console.log("Requestcompleted");
});
```
在这个例子中, `makeRequest` 函数接受回调函数作为参数,并在 HTTP 请求完成时执行该函数。回调函数作为参数传递给 `makeRequest` 函数,并在请求完成时执行。回调函数也可以与 Promise 一起使用,这允许您以更结构化的方式处理异步操作。下面是使用带有 Promise 的回调函数的示例:
```
function makeRequest(callback) {
// 在此发起 HTTP 请求
// ...
Promise.resolve().then(callback);
}
makeRequest(function() {
console.log("Requestcompleted");
});
```
在这个例子中,`makeRequest`函数返回一个promise,然后用回调函数解析它。回调函数在 Promise 解决时执行,即 HTTP 请求完成时。回调函数也可以与事件一起使用,例如鼠标单击或按键。以下是使用事件侦听器的回调函数的示例:
```
document.getElementById("myButton").addEventListener("click", function() {
console.log("Button clicked");
} );
````
在此示例中,在 HTML 按钮元素上调用 `addEventListener` 方法,并将回调函数作为参数传递。单击按钮时,将执行回调函数,并将消息记录到控制台。