JS for循环的扩展知识

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循环外不可以直接使用。

JS for循环的扩展知识_第1张图片

你可能感兴趣的:(JavaScript)