第一:
function A() {
for (var i = 0; i < 10; ++i) {
//...
}
console.log(i); //i is undefined
// i dont get global i
for (i = 0; i < 10; ++i) {
//...
}
}
当我执行A()时,我不会获得全局变量。 但是这个:
function B() {
// i get global i
for (i = 0; i < 10; ++i) {
//...
}
}
当我执行B()时,我得到了全局i。 那么为什么我执行A()时无法获得全局?
答案 0 :(得分:0)
i
永远不会在您的代码中全局范围内。它的词法范围仅限于A
函数的范围。