繁体   English   中英

将 addEventListener 变量的范围更改为全局

[英]Changing addEventListener variables' scope to global

我希望在计算最终的全局变量时考虑 addEventListener 函数中的变量。 我知道默认情况下它们保留在本地/块/函数范围内。 这可以以某种方式解决吗? 我正在尝试根据点击事件(输入、下拉列表和 2 个复选框)中的局部变量来计算价格(全局变量)。 当我声明它时,我收到一条消息,指出未定义局部变量。 这是可以理解的,因为事件还没有发生。 即使这样做了,我也可以在浏览器控制台中读取局部变量的更新值,但全局变量仍然未定义。

在文件的顶部,声明要改变的全局变量:

var EvilGlobalPriceVariable = 0

然后在处理程序中,对其进行变异。 对要在处理程序中影响的每个变量执行此操作。 如果您有多个对象,最好将其设为对象:

var EvilGlobalState = {
   mutateMeHandlers: 0,
   mutateMeToo: 0
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM