JS(break;continue;双重循环)

JavaScript09

JS(break;continue;双重循环),第1张

1、break;

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

            if(i>2){

           break( 跳出循环 循环结束 下面的语句不执行了) }

            document.write(i)}

         在while循环中 使用break 

         打印出我是软件大道的程序员 5次 但是 第4次的时候就不打印了 

         let i=1

         while(i<=5){

          if(i==4){ break  }

            document.write('<br>我是软件大道的程序员'+i)

             i++}

        break语句用于终止某个循环,使程序跳到循环块外的下一条语句,

        在循环中位于break后的语句将不再执行,

        break 语句不仅可以用在for循环中,也可以用在其他循环中 ,

2、  continue;

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

        if(i==3){continue结束本次循环,进入下次循环 

            continue( 跳过 不会终止循环,但是会跳过本次循环) }

            if(i==3) continue

          document.write(i)}

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

            let chenji = parseInt(prompt('第'+i+'位同学请输入成绩'))

             初级调试 使用console.log或者alert 

            console.log(chenji)

            alert(chenji) 

            if(chenji<0){

                 document.write('<br>第'+i+'位同学成绩有误')

                continue

                document.write('<br>终止程序')

                break }

else{document.write('<br>第'+i+'位同学请输入成绩:'+chenji)}

}

3、双重循环

在leetcode上刷题的时候踩的坑,题目是这样的

简单思考了一下,用最简单的双循环就可以解决问题,于是习惯性用forEach遍历了两次

结果发现函数返回值是undefined

百度了一下,发现是因为forEach多次执行回调函数,回调函数中使用return没法直接终止forEach,只能终止单次的回调。所以return语句在forEach内部是无法跳出循环的。

解决方案:

1.方案一:js针对数组操作的另外两个方法some()与every()

2.方案二:for/while语句老实循环

总结原因还是对forEach方法理解不够到位