同步回调和异步回调

一个函数作为另一个函数的参数,当这个函数在某些事情完后开始执行这个作为参数的函数。作为参数传给另一个函数,并在适当时机被"回过头"来调用的函数。

可以这样理解它:不是父函数执行完立刻调用它,而是父函数在某个时机(比如处理完数据、事件触发、网络请求成功等)才调用它。

  • 同步调用
python 复制代码
function greet(name, callback) {
    console.log("你好," + name);
    callback();  // 此处调用传入的函数
}

function sayBye() {
    console.log("再见!");
}

greet("张三", sayBye);   // => 你好,张三
                        // => 再见!

sayBye是回调函数;

它是被greet传进去,在适合时机调用的。

  • 异步回调(比如网络请求)
python 复制代码
axios.get('/api/books')
  .then(function(response) {
      console.log('请求成功,返回数据:', response);
  });

.then(function)里的函数就是一个回调。

只有当axios请求成功后,这个函数才会被自动调用。
不是"主函数执行完就调用",而是"请求成功后才调用"。

相关推荐
runnerdancer11 分钟前
Agent如何加载执行Skill的脚本
前端·agent
yingyima33 分钟前
VS Code 正则替换技巧:从凌晨3点的服务器报警开始
前端
默_笙39 分钟前
🛬 我让 AI 帮我写了一个打飞机游戏,结果 Canvas 把我整不会了
前端·javascript
梯度不陡39 分钟前
AI 到底能不能从零写软件?ProgramBench 和 RepoZero 给出了两种答案
前端·javascript·面试
冬奇Lab1 小时前
每日一个开源项目(第137篇):Penpot - 真正开源的设计协作工具,SVG 原生格式消灭设计-开发鸿沟
前端·开源·设计
nuIl1 小时前
实现一个 Coding Agent(7):Skills
前端·agent·cursor
nuIl1 小时前
实现一个 Coding Agent(8):会话持久化与多会话
前端·agent·cursor
jt君424262 小时前
React Native JSI 深入剖析 — 第 5 部分中文技术整理:用 HostObject 把 C++ 类暴露给 JavaScript
前端·react native
胡萝卜术2 小时前
滑动窗口最大值:从暴力到单调队列,层层优化全解析
前端·javascript·面试
fluffyox2 小时前
Notion 的公式栏里,藏着一台虚拟机——逆向 + 用 600 行 JS 复刻它的编译器与栈式 VM
前端