for(i=0;i<4;i++){
}
我需要说:
for(var i=0;i<4;i++)
...?
否则事情将是全球性的,对吧?
答案 0 :(得分:3)
答案 1 :(得分:1)
你是对的。如果你没有在for循环中声明变量,那么它会假设你指的是之前声明的变量“i”。如果未声明变量,那么您将收到错误。最好在for循环中声明迭代器。
答案 2 :(得分:0)
没有var
m-racoon:~ mkotsur$ node
> function test() {
... for(i=0;i<4;i++){
... console.log(i);
... }
... }
> test();
0
1
2
3
> console.log(i);
4
使用var
> function test1() {
... for(var j=0;j<4;j++){
... console.log(j);
... }
... }
> test1()
0
1
2
3
> console.log(j);
ReferenceError: j is not defined
所以,回答:是的。