首页 > Web开发 > 详细

js同步和异步和回调的理解

时间:2020-09-06 14:12:46      阅读:68      评论:0      收藏:0      [点我收藏+]

看阮老师的http://www.ruanyifeng.com/blog/2014/10/event-loop.html 

我谈下我自己的理解

js执行时可以想象成一条车道,车道上汽车一辆接一辆,有条不紊的运行。(同步)这时,有一辆车坏掉了。假如它停在原地进行修理,那么后面的车就会被堵住没法行驶(代码堵塞),交通就乱套了。幸好旁边有应急车道,可以把故障车辆推到应急车道修理,而正常的车流不会受到任何影响(异步处理)。等车修好了,再从应急车道回到正常车道即可。唯一的影响就是,应急车道用多了,原来的车辆之间的顺序会有点乱。

或者是这么看js执行好比玩的垃圾网页游戏,主线任务被绑定死的不做完不准做支线(同步),但支线任务又会被接取,接取后只好放入任务面板等做完主线后再做(异步)

 

回调(这个忘了哪里听过但例子真的很好)

约会结束后你送你孩子回家,离别时,你肯定会说:“到家了给我发条信息(call me back),我很担心你。”

然后你女朋友回家以后还真给你发了条信息。

其实这就是一个回调的过程。

你留了个参数函数(要求女朋友给你发条信息)给你女朋友,然后你女朋友回家,回家的动作是主函数。

她必须先回到家以后,主函数执行完了,再执行传进去的函数,然后你就收到一条信息了。

js同步和异步和回调的理解

原文:https://www.cnblogs.com/jiangxiaoming/p/13620691.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!