JavaScript continue使用

上一章讲了break的时候,break是会直接中断当前的循环。但是continue不会中断循环,而是会跳过当前条件,进行下一个条件。

for( var i = 1; i < 5; i++){
    
            for(var j = 1;  j < 5; j++){
    
                if( j == 2 ) {
             
                continue; //这个continue会直接结束当前条件语句,进行下一次的条件语句
            }

            console.log(i, j);                
        }
} 

在上面这个案例中,当 i = 1,的时候, j = 1,循环继续进行,输出(1,1);但是当 i = 1 , j = 2 的时候,上一张遇到了break,所以直接跳出当前循环,但是这里是continue,所以他会跳过当前条件,进行下一个条件,所以不会有当前的console.log(i, j); 会直接进入j=3;

每当遇到 j = 2, 循环就会跳过,进行下一个条件。

所以结果是 (1,1), (1,3),(1,4),

      (2,1), (2,3),(2,4),

         (3,1), (3,3),(3,4),

      (4,1), (4,3),(4,4)

之前break中有个标签控制,continue当然也有

label : for( var i = 1; i < 5; i++){
    
            for(var j = 1;  j < 5; j++){
    
                if( j == 2 ) {
             
                continue label; //这个continue会直接结束当前条件语句,进行下一次的条件语句
            }

            console.log(i, j);                
        }
} 

在这个例子中,当遇到了continue,他就跳过了外层的for循环,外层跳过了,当然内层也不运行了。 所以当 i = 1,的时候, j = 1,循环继续进行,输出(1,1);但是当 i = 1 , j = 2 的时候, 带有标签label的外层for循环就被跳过,所以就直接进行了 i = 2 的情况。当 i = 2,的时候, j = 1,循环继续进行,输出(2,1);但是当 i = 2 , j = 2 的时候, 又一次遇到了continue,所以i = 2的循环有一次被跳过,所以就进行了 i = 3, i = 4;

所以最后的结果是: (1,1),(2,1),(3,1),(4,1)

原文地址:https://www.cnblogs.com/ningxin/p/10106900.html