You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript中如何将Event对象赋值给全局变量?代码赋值失败求解

解决全局变量无法接收Event对象的问题

哈哈,这个问题其实是个超常见的小失误!我帮你看看代码:

你定义的全局变量是pObject,但在点击事件的回调函数里,你写成了pOjbect = evt;——注意这里的变量名拼写错了!j和b的顺序搞反了,相当于你在给一个未声明的新变量赋值,而不是你一开始定义的那个全局变量pObject,所以打印typeof pObject自然会显示undefined。

修正后的代码很简单,把拼写改过来就行:

<script>
var pEle = document.getElementById("pElement");
var pObject;
pEle.addEventListener("click", function(evt) {
  pObject = evt; // 这里把pOjbect改成pObject
  console.log(typeof pObject); // 现在会打印"object"
  console.log(pObject); // 可以直接打印事件对象看看具体内容
}, false);
</script>

另外给你个小建议:可以在代码开头加上'use strict';开启严格模式,这样如果不小心拼写错变量名,浏览器会直接抛出错误,能帮你更快发现这类低级错误,避免浪费时间排查~

内容的提问来源于stack exchange,提问作者thirstForKnowledge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:40:16