callback = a function that is passed as an argument to another function Callback(回调函数) 就是一个 函数作为参数传入另一个函数中执行 的函数。
// 调用 hello() 函数时,把 goodbye 这个函数作为参数传入
hello(goodbye); // 👈 传入函数名(不加括号)
// 定义 hello 函数,接收一个参数 callback(实际上是一个函数)
function hello(callback){
console.log("Hello");
// 调用回调函数(即执行传进来的函数)
callback(); // 👈 相当于执行 goodbye()
}
// 定义被传入的函数 goodbye
function goodbye(){
console.log("goodbye");
}Another Example
// 调用 sum() 时,将 displayConsole 函数作为参数传入
sum(displayConsole, 3, 5);
// 👆 表示 sum() 执行完加法后,会调用 displayConsole(result)
// 定义 sum 函数
function sum(callback, x, y){
let result = x + y; // 执行加法计算
callback(result); // 调用回调函数,并传递结果
}
// 定义 displayConsole 函数(接收结果并打印)
function displayConsole(result){
console.log(result);
}| 名称 | 说明 | 示例 |
|---|---|---|
| 回调函数 (Callback) | 作为参数传入另一个函数的函数 | hello(goodbye) |
| 调用时不加括号 | 因为要传递函数本身,而不是立即执行 | ✅ hello(goodbye) ❌ hello(goodbye()) |
| 执行时才加括号 | 调用传入的函数 | callback() |
| 用途 | 让函数在某个动作完成后再执行另一个操作 | 常用于异步逻辑 |