gpt4 book ai didi

javascript - JS : Why is the Event object accessible in event handlers without accepting it in a parameter?

转载 作者:行者123 更新时间:2023-11-30 15:22:58 25 4
gpt4 key购买 nike

<分区>

在回顾我过去写的一些 JS 时,我注意到我试图在事件处理程序中访问 event.keyCode,但我的函数的唯一参数是 e ,不是事件。因此,虽然我希望得到一个 “Uncaught ReferenceError: event is not defined”,但我发现我的脚本按预期工作(至少在 Chrome 中是这样)。

document.body.addEventListener('keyup', function(e) {
if (event.keyCode === 13) {
// ...
}
});

事实上,如果我在该处理程序中放置一个 console.log(e === event),我会得到 true。经过一些测试(在 a JS Bin 中),这似乎必须适用于每个此类事件,使 event 成为另一种“狡猾”的局部变量,如 arguments出现在函数中而不在参数中请求它。

这让我想知道:

  1. 这是仅有的两个“狡猾”的局部变量吗?
  2. Chrome 中 event 的这种行为是否与其他浏览器和 JS 环境一致?

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