我在谷歌Chrome浏览器测试这个局部变量:的Javascript为什么我可以访问的功能
function test(){
d = 2;
}
function test2(){
test();
document.write(d);
}
test2();
在功能test
变量d应该是当地的,所以我不能在功能test2
访问它,有人可以解释为什么这有用吗?
编辑:
这是不重复的,因为我不能在原来的问题,使用的变量,而不VAR使得全球的正确答案找到任何地方,它是隐含提到“隐性globals`
的恐怖
如果这是唯一的d被定义的地方,它不是本地的。你需要'var d = 2; '因为它是一个局部变量。根据你的定义,这是全球性的。 – Snowmonkey
,因为应该使用'var' .... – epascarello
@baao这不是重复的,因为我无法找到我的答案在所谓的重复,请检查它 – ammcom