对JavaScript事件机制的一点理解

JavaScript通过事件机制实现了异步操作,这种异步操作可以使CPU可以在IO任务的等待中被释放出来处理其他任务,等待IO结束再去处理这个任务。这个是一个基本的事件机制。
那么是不是说事件从监听到派发到处理整个过程都是异步的呢,我以前没有仔细研究过,今天遇到了如下的一段代码:
          if (me.beforeEdit(context) === false || me.fireEvent('beforeedit', me, context) === false || context.cancel) {
                return false;
            }
这是ExtJS框架的一段代码,这个判断语句获取派发事件的处理函数的返回值作为条件,决定是否返回False还是继续其他处理。后来我调试一下这段代码,原来从派发事件到时间监听函数的处理是同步的,那么什么地方是异步的呢,就是事件监听到被派发的过程是异步的。
总结一下,时间监听过程是异步的,事件派发和处理是同步的。
原文地址:https://www.cnblogs.com/yujunhua/p/6831677.html