javascript事件监听器在汇编语言中编译成什么
我正在研究javascript事件侦听器的性能,并试图更好地理解它们。我的问题是事件侦听器在汇编语言中是什么样子的,比如它编译成什么?同样,当javascript中触发事件时,执行的汇编代码指令集是什么。不一定要寻找精确的x_86代码,但一个概述会很好,我似乎无法在网上找到任何 由于几个原因,很难看出你的问题有多大意义。让我解释一下它是如何工作的,然后也许你会明白为什么你的问题没有一个直接的答案 首先,javascript是一种解释语言。它被解析成自己的字节码,然后由解释器执行字节码。在某种程度上,您可以说它有自己的指令集,而不是使用CPU指令集。有各种级别的字节码优化,以使事情尽可能快,而具体的实现方式因实现而异。但是,足以说明JavaScript没有完全编译成所有的x86汇编指令,比如C或C++。因此,没有一组精确的x86指令唯一地对应于给定的一组javascript 第二,这里涉及的系统有多个层次。在最底层,是操作系统、驱动程序和事件子系统创建了这些事件,如鼠标向下或按键向下。该代码很可能是用C/C++编写的,并且已经简化为汇编语言。上一层是位于操作系统顶部的浏览器事件系统。这就是与操作系统的接口,使网页中的控件实际工作并捕获实际事件。然后,更上一层的是javascript接口,它允许javascript脚本注册一个事件处理程序,该事件处理程序将在事件发生时被调用 我们可以从概念上解释它是如何工作的,但不能在x86汇编指令级别上解释。概念上:javascript事件监听器在汇编语言中编译成什么,javascript,performance,assembly,web,Javascript,Performance,Assembly,Web,我正在研究javascript事件侦听器的性能,并试图更好地理解它们。我的问题是事件侦听器在汇编语言中是什么样子的,比如它编译成什么?同样,当javascript中触发事件时,执行的汇编代码指令集是什么。不一定要寻找精确的x_86代码,但一个概述会很好,我似乎无法在网上找到任何 由于几个原因,很难看出你的问题有多大意义。让我解释一下它是如何工作的,然后也许你会明白为什么你的问题没有一个直接的答案 首先,javascript是一种解释语言。它被解析成自己的字节码,然后由解释器执行字节码。在某种程度
elem.addEventListener(“单击”,fn)代码>
elem
上的addEventListener
方法在这里可以找到很多webkit事件处理代码:出于几个原因,很难看出您的问题有多大意义。让我解释一下它是如何工作的,然后也许你会明白为什么你的问题没有一个直接的答案 首先,javascript是一种解释语言。它被解析成自己的字节码,然后由解释器执行字节码。在某种程度上,您可以说它有自己的指令集,而不是使用CPU指令集。有各种级别的字节码优化,以使事情尽可能快,而具体的实现方式因实现而异。但是,足以说明JavaScript没有完全编译成所有的x86汇编指令,比如C或C++。因此,没有一组精确的x86指令唯一地对应于给定的一组javascript 第二,这里涉及的系统有多个层次。在最底层,是操作系统、驱动程序和事件子系统创建了这些事件,如鼠标向下或按键向下。该代码很可能是用C/C++编写的,并且已经简化为汇编语言。上一层是位于操作系统顶部的浏览器事件系统。这就是与操作系统的接口,使网页中的控件实际工作并捕获实际事件。然后,更上一层的是javascript接口,它允许javascript脚本注册一个事件处理程序,该事件处理程序将在事件发生时被调用 我们可以从概念上解释它是如何工作的,但不能在x86汇编指令级别上解释。概念上:
elem.addEventListener(“单击”,fn)代码>
addEventListener