gpt4 book ai didi

javascript - JavaScript 如何为事件处理程序的 this 分配上下文?

转载 作者:数据小太阳 更新时间:2023-10-29 03:49:25 24 4
gpt4 key购买 nike

看完相关问题#1 , #2我仍然没有找到以下问题的答案:

Javascript 可以通过以下方式设置上下文(即设置this):bindcallapply

但是当我编写事件处理程序时:

document.getElementById('myInput').onclick = function ()
{
alert(this.value)
}

谁/什么实际上附加this对象本身?

附言使用 jQuery 时:

  $("#myInput").bind(function (){...})

(bindcallapply)的内部实现

所以当我使用 jQuery 时,谁在使用它?

最佳答案

为什么,当然是 DOM/JavaScript,W3C 应该以这种方式工作。

Event handlers are invoked in the context of a particular object (the current event target) and are provided with the event object itself.

Source

究竟是如何发生的,我们不知道。这是一个实现细节。

我们所知道的是,W3C 定义的语义是通过某种方式实现的,但是浏览器的哪一部分以及如何实现,这留给了浏览器开发人员,他们可以按照自己认为合适的方式实现。

关于javascript - JavaScript 如何为事件处理程序的 this 分配上下文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12722747/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com