鉴于很久以前异步编程在 Javascript 中已经司空见惯,对我来说,对 window.setTimeout 的调用次数似乎非常骇人听闻。我了解 VM 的工作原理以及事件循环的工作原理。关键是,有谁知道为什么 ecma 作者不选择添加某种“nextEventLoop”或“defer”调用来强制稍后执行逻辑块的原因?
每次看到 setTimeout(0) 时我都会畏缩,因为从来没有作者打算将超时设置为零。那么,为什么要继续强迫我们进行这种黑客攻击呢?
或者,有没有更好的选择?
鉴于很久以前异步编程在 Javascript 中已经司空见惯,对我来说,对 window.setTimeout 的调用次数似乎非常骇人听闻。我了解 VM 的工作原理以及事件循环的工作原理。关键是,有谁知道为什么 ecma 作者不选择添加某种“nextEventLoop”或“defer”调用来强制稍后执行逻辑块的原因?
每次看到 setTimeout(0) 时我都会畏缩,因为从来没有作者打算将超时设置为零。那么,为什么要继续强迫我们进行这种黑客攻击呢?
或者,有没有更好的选择?