【发布时间】:2012-04-20 11:43:18
【问题描述】:
假设我有这样一段代码:
keysPressed = new Object();
document.onkeydown = function(e) {
keysPressed[e.charCode] = true;
}
document.onkeyup = function(e) {
keysPressed[e.charCode] = false;
}
理论上这应该给我留下一个对象,我可以去keysPressed.w检查当前是否按下了'w'。
我可以在我的 JavaScript 控制台中看到所有属性都像正常一样定义,但是每当我尝试访问它们时,它都会说它们是未定义的。我怀疑这些属性在定义它们的函数内具有本地范围,并且无法在其他地方访问。有没有什么办法可以在不创建一大堆全局变量的情况下解决这个问题?
提前致谢!
【问题讨论】:
标签: javascript object scope