在JavaScript中打破嵌套循环的最佳方法是什么?

在JavaScript中打破嵌套循环的最佳方法是什么?

在Javascript中打破嵌套循环的最佳方法是什么?

//Write the links to the page.for (var x = 0; x < Args.length; x++){
   for (var Heading in Navigation.Headings)
   {
      for (var Item in Navigation.Headings[Heading])
      {
         if (Args[x] == Navigation.Headings[Heading][Item].Name)
         {
            document.write("<a href=\"" 
               + Navigation.Headings[Heading][Item].URL + "\">" 
               + Navigation.Headings[Heading][Item].Name + "</a> : ");
            break; // <---HERE, I need to break out of two loops.
         }
      }
   }}


拉莫斯之舞
浏览 415回答 3
3回答

牛魔王的故事

就像Perl一样loop1: &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;i&nbsp;in&nbsp;set1)&nbsp;{loop2: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;j&nbsp;in&nbsp;set2)&nbsp;{loop3: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;k&nbsp;in&nbsp;set3)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break&nbsp;loop2;&nbsp;&nbsp;//&nbsp;breaks&nbsp;out&nbsp;of&nbsp;loop3&nbsp;and&nbsp;loop2 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;}如EMCA-262第12.12节中的定义。[MDN Docs]与C不同,这些标签只能用于continue和break,因为Javascript没有goto。

www说

将其包裹在一个函数中然后只是return。

慕桂英3389331

我有点迟到了,但以下是与语言无关的方法,不使用GOTO /标签或功能包装:for&nbsp;(var&nbsp;x&nbsp;=&nbsp;Set1.length;&nbsp;x&nbsp;>&nbsp;0;&nbsp;x--){ &nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;y&nbsp;=&nbsp;Set2.length;&nbsp;y&nbsp;>&nbsp;0;&nbsp;y--) &nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;z&nbsp;=&nbsp;Set3.length;&nbsp;z&nbsp;>&nbsp;0;&nbsp;z--) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;z&nbsp;=&nbsp;y&nbsp;=&nbsp;-1;&nbsp;//&nbsp;terminates&nbsp;second&nbsp;loop &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;z&nbsp;=&nbsp;y&nbsp;=&nbsp;x&nbsp;=&nbsp;-1;&nbsp;//&nbsp;terminate&nbsp;first&nbsp;loop &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;}}在好的方面,它自然流动,这应该取悦非GOTO人群。在缺点方面,内部循环需要在终止之前完成当前迭代,因此在某些情况下可能不适用。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript