TypeScript - 迴圈



您可能會遇到需要多次執行程式碼塊的情況。通常,語句是按順序執行的:函式中的第一個語句首先執行,然後是第二個語句,依此類推。

程式語言提供了各種控制結構,允許更復雜的執行路徑。

迴圈語句允許我們多次執行語句或語句組。下面是在大多數程式語言中迴圈語句的一般形式。

Loop

TypeScript 提供不同型別的迴圈來處理迴圈需求。下圖說明了迴圈的分類 -

Loop Types

確定迴圈

迭代次數確定/固定的迴圈稱為確定迴圈for 迴圈是確定迴圈的一種實現。

序號 迴圈和描述
1. for 迴圈

for 迴圈是確定迴圈的一種實現。

不確定迴圈

當迴圈中的迭代次數不確定或未知時,使用不確定迴圈。

不確定迴圈可以使用 -

序號 迴圈和描述
1. while 迴圈

while 迴圈在每次指定的條件計算結果為真時執行指令。

2. do… while

do…while 迴圈與 while 迴圈類似,只是 do...while 迴圈在第一次執行迴圈時不會計算條件。

示例:while 與 do..while

var n:number = 5 
while(n > 5) { 
   console.log("Entered while") 
} 
do { 
   console.log("Entered do…while") 
} 
while(n>5)

此示例最初聲明瞭一個 while 迴圈。只有當傳遞給 while 的表示式計算結果為真時,才會進入迴圈。在此示例中,n 的值不大於零,因此表示式返回 false,並且跳過迴圈。

另一方面,do…while 迴圈會執行一次語句。這是因為初始迭代不考慮布林表示式。但是,對於後續迭代,while 會檢查條件並將控制權移出迴圈。

編譯後,它將生成以下 JavaScript 程式碼 -

var n = 5;
while (n > 5) {
   console.log("Entered while");
}

do {
   console.log("Entered do…while");
} while (n > 5);

以上程式碼將產生以下輸出 -

Entered do…while

break 語句

break 語句用於將控制權移出構造。在迴圈中使用break 會導致程式退出迴圈。其語法如下 -

語法

break

流程圖

Break Statement

示例

現在,看看下面的示例程式碼 -

var i:number = 1 
while(i<=10) { 
   if (i % 5 == 0) {   
      console.log ("The first multiple of 5  between 1 and 10 is : "+i) 
      break     //exit the loop if the first multiple is found 
   } 
   i++ 
}  //outputs 5 and exits the loop

編譯後,它將生成以下 JavaScript 程式碼 -

var i = 1;

while (i <= 10) {
   if (i % 5 == 0) {
      console.log("The first multiple of 5  between 1 and 10 is : " + i);
      break; //exit the loop if the first multiple is found
   }
   i++;
} //outputs 5 and exits the loop

它將產生以下輸出 -

The first multiple of 5  between 1 and 10 is : 5

continue 語句

continue 語句跳過當前迭代中的後續語句,並將控制權返回到迴圈的開頭。與 break 語句不同,continue 不會退出迴圈。它終止當前迭代並開始後續迭代。

語法

continue

流程圖

Continue Statement

示例

continue 語句的示例如下 -

var num:number = 0
var count:number = 0;

for(num=0;num<=20;num++) {
   if (num % 2==0) {
      continue
   }
   count++
}
console.log (" The count of odd values between 0 and 20 is: "+count)    //outputs 10 

以上示例顯示了 0 到 20 之間奇數值的數量。如果數字為偶數,則迴圈退出當前迭代。這是使用continue 語句實現的。

編譯後,它將生成以下 JavaScript 程式碼。

var num = 0;
var count = 0;

for (num = 0; num <= 20; num++) {
   if (num % 2 == 0) {
      continue;
   }
   count++;
}
console.log(" The count of odd values between 0 and 20 is: " + count);    
//outputs 10

輸出

The count of odd values between 0 and 20 is: 10

無限迴圈

無限迴圈是一個無限執行的迴圈。for 迴圈和while 迴圈可用於建立無限迴圈。

語法:使用 for 迴圈建立無限迴圈

for(;;) { 
   //statements 
}

示例:使用 for 迴圈建立無限迴圈

for(;;) { 
   console.log(“This is an endless loop”) 
}

語法:使用 while 迴圈建立無限迴圈

while(true) { 
   //statements 
} 

示例:使用 while 迴圈建立無限迴圈

while(true) { 
   console.log(“This is an endless loop”) 
}
廣告