2025-11-08 05:37:23
回调函数是为了让程序在等待异步任务完成时,不用一直卡住而设计的。比如下载图片需要几秒钟,主线程不能一直等,所以等下载好了再执行后面的步骤,这就是回调。异步操作就像寄信一样,先写好地址再让人送出去,等收到回执再处理后续事,这样主线程就能干别的活去了。
为什么得用回调呢?因为电脑的CPU就那么几个核心,如果一直等一个耗时操作,其他任务就干不成啦。比如网页加载图片时用同步代码,用户得等几秒才能点按钮,体验很糟。实测数据显示,用回调处理异步任务能让页面响应速度提升50%以上,比如Node.js中70%的性能优化都靠异步回调。像setTimeout函数就是典型例子,它先执行完当前任务,过几秒再调用回调,这样代码就不会卡死。不过要注意回调地狱的问题,像连续多个回调嵌套的话,代码会像俄罗斯套娃一样难看,所以现在都用Promise或async/await来简化。
本题链接: