JS for循环的扩展知识

来源:互联网 发布:fc2的域名怎么设置 编辑:程序博客网 时间:2024/06/05 22:55
for循环是JavaScript中经常使用的基础点。为了更好的使用for循环,我们需要了解更多for循环的相关知识。

1、在双重嵌套的for循环中,若外层和内层循环声明的变量相同(同一变量),则内层循环的变量初始化时会改变外层循环相同变量名的变量的值。

例如:外层循环的第一次执行完毕后,内层循环将变量i的值变为19,导致外层循环不再执行。

for(var i=0; i<10; i++){    console.log("i1=" + i);    for(var i=11; i<20; i++){        console.log("i2=" + i);    }}

内层循环执行完毕,变量i的值都为8,导致死循环。

for(var i=0; i<10; i++){    console.log("i1=" + i);    for(var i=5; i<8; i++){        console.log("i2=" + i);    }}

所以,通常情况下应该尽量避免内外层循环声明相同变量名的变量。

2、当for循环中有多个判断条件时,若多个判断条件以‘,’分隔时,以最后一个判断条件的结果为准

var b = true;for(var i=0; i<10, b; i++){ //以b的结果为准    console.log(i);}

若多个判断条件以‘&&’分隔时,以多个判断条件的结果为准。

for(var i=0; i<0 && b; i++){    console.log(i);}

3、JavaScript没有块级作用域。一个函数中,在for循环中声明的变量可以在for循环外直接使用。

for(var i=0; i<10; i++){    console.log(i);}console.log(i); //9

在Java中有块级作用域,for循环中声明的变量在for循环外不可以直接使用。

这里写图片描述