JavaScript break 使用

遇到break, 它会终端当前的循环(for, while, do while)

例如:

for( var i = 1; i < 5; i++){

    for(var j = 1;  j < 5; j++){
    
        if( j == 2 ) {
             
            break; //这个break只能管理j,不能管理i
        }

    console.log(i, j);                
    }
}

在这个案例中,当 i = 1,的时候, j = 1,循环继续进行,输出(1,1);但是当 i = 1 , j = 2 的时候, j所存在的for循环被中断,所以j始终是1, 但是i的for循环继续运行,所以最后 结果中j只能输出1; 所以结果是 (1,1), (2,1), (3,1), (4,1)。

那么我们如何让break管理i,而不是j呢?这里就会使用到标签, 给for循环一个标签控制。

label : for( var i = 1; i < 5; i++){
    
            for(var j = 1;  j < 5; j++){
    
                if( j == 2 ) {
             
                break label; //这个break只能管理i,不能管理j
            }

            console.log(i, j);                
        }
}    

在上面这个案例中,当 i = 1,的时候, j = 1,循环继续进行,输出(1,1);但是当 i = 1 , j = 2 的时候, j所存在的for循环遇到了break,但是break 后面有个标签label,所以这时,break控制的是有label标签的for循环,也就是有i的循环。所以呢,最外层的for循环就会被中断,所以最红终结果只有(1,1).

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