- TypeScript 基礎
- TypeScript - 首頁
- TypeScript - 路線圖
- TypeScript - 概述
- TypeScript - 環境搭建
- TypeScript - 基本語法
- TypeScript vs. JavaScript
- TypeScript - 特性
- TypeScript - 變數
- TypeScript - let & const
- TypeScript - 運算子
- TypeScript 基本型別
- TypeScript - 型別
- TypeScript - 型別註解
- TypeScript - 型別推斷
- TypeScript - 數字
- TypeScript - 字串
- TypeScript - 布林值
- TypeScript - 陣列
- TypeScript - 元組
- TypeScript - 列舉
- TypeScript - any
- TypeScript - never
- TypeScript - 聯合型別
- TypeScript - 字面量型別
- TypeScript - 符號
- TypeScript - null vs. undefined
- TypeScript - 類型別名
- TypeScript 控制流
- TypeScript - 決策
- TypeScript - if 語句
- TypeScript - if else 語句
- TypeScript - 巢狀 if 語句
- TypeScript - switch 語句
- TypeScript - 迴圈
- TypeScript - for 迴圈
- TypeScript - while 迴圈
- TypeScript - do while 迴圈
- TypeScript 函式
- TypeScript - 函式
- TypeScript - 函式型別
- TypeScript - 可選引數
- TypeScript - 預設引數
- TypeScript - 匿名函式
- TypeScript - 函式構造器
- TypeScript - rest 引數
- TypeScript - 引數解構
- TypeScript - 箭頭函式
- TypeScript 介面
- TypeScript - 介面
- TypeScript - 介面擴充套件
- TypeScript 類和物件
- TypeScript - 類
- TypeScript - 物件
- TypeScript - 訪問修飾符
- TypeScript - 只讀屬性
- TypeScript - 繼承
- TypeScript - 靜態方法和屬性
- TypeScript - 抽象類
- TypeScript - 存取器
- TypeScript - 鴨子型別
- TypeScript 高階型別
- TypeScript - 交叉型別
- TypeScript - 型別守衛
- TypeScript - 型別斷言
- TypeScript 型別操作
- TypeScript - 從型別建立型別
- TypeScript - Keyof 型別運算子
- TypeScript - Typeof 型別運算子
- TypeScript - 索引訪問型別
- TypeScript - 條件型別
- TypeScript - 對映型別
- TypeScript - 模板字面量型別
- TypeScript 泛型
- TypeScript - 泛型
- TypeScript - 泛型約束
- TypeScript - 泛型介面
- TypeScript - 泛型類
- TypeScript 其他
- TypeScript - 三斜槓指令
- TypeScript - 名稱空間
- TypeScript - 模組
- TypeScript - 環境宣告
- TypeScript - 裝飾器
- TypeScript - 型別相容性
- TypeScript - Date 物件
- TypeScript - 迭代器和生成器
- TypeScript - Mixins
- TypeScript - 實用程式型別
- TypeScript - 裝箱和拆箱
- TypeScript - tsconfig.json
- 從 JavaScript 到 TypeScript
- TypeScript 有用資源
- TypeScript - 快速指南
- TypeScript - 有用資源
- TypeScript - 討論
TypeScript - for 迴圈
for 迴圈
for 迴圈會執行程式碼塊指定的次數。它可以用來迭代一組固定的值,例如陣列。
TypeScript 提供了另外兩種迴圈變體:for...in 和 for...of。這些變體對於迭代可迭代物件(如陣列、字串和對映)特別有用。
for...of 迴圈通常更適合於迭代可迭代物件。它直接訪問可迭代物件中的元素。
for...in 迴圈迭代物件的列舉屬性。雖然它可以與陣列或字串一起使用,但不推薦用於這些情況。
語法
for 迴圈的語法如下:
for (initial_count_value; termination-condition; step) {
//statements
}
迴圈使用計數變數來跟蹤迭代次數。迴圈透過將count的值設定為其初始值來初始化迭代。每次count的值滿足終止條件時,它都會執行程式碼塊。step在每次迭代後更改count的值。
流程圖
示例:簡單的 for 迴圈
var num:number = 5;
var i:number;
var factorial = 1;
for(i = num;i>=1;i--) {
factorial *= i;
}
console.log(factorial)
程式計算數字 5 的階乘並顯示結果。for 迴圈生成從 5 到 1 的數字序列,在每次迭代中計算這些數字的乘積。
編譯後,它將生成以下 JavaScript 程式碼。
var num = 5;
var i;
var factorial = 1;
for (i = num; i >= 1; i--) {
factorial *= i;
}
console.log(factorial);
程式碼產生以下輸出:
120
示例:帶 break 語句的 for 迴圈
var i: number = 0;
for (i; i < 5; i++) {
if (i == 4) {
break;
}
console.log(i);
}
在 if 條件內,當 i 的值等於 4 時,它會中斷並退出 for 迴圈。因此它只打印 0 到 3。
編譯後,它將生成以下 JavaScript 程式碼。
var i = 0;
for (i; i < 5; i++) {
if (i == 4) {
break;
}
console.log(i);
}
以上示例的輸出如下:
0 1 2 3
示例:帶 continue 語句的 for 迴圈
var i: number = 0;
for (i; i < 5; i++) {
if (i % 2 == 0) {
continue;
}
console.log(i);
}
在上面的示例中,如果條件 (i % 2 == 0) 評估為 true,則執行控制將轉到下一次迭代。if 塊後面的語句將被跳過。當條件為 false 時,if 塊後面的語句將被執行。
編譯後,它將生成以下 JavaScript 程式碼。
var i = 0;
for (i; i < 5; i++) {
if (i % 2 == 0) {
continue;
}
console.log(i);
}
輸出如下:
1 3
for...in 迴圈
for 迴圈的另一種變體是for...in 迴圈。for…in 迴圈可用於迭代一組值,例如陣列或元組。其語法如下:
for...in 迴圈用於迭代值列表或集合。這裡的val資料型別應該是字串或 any。
語法
for..in 迴圈的語法如下:
for (var val in list) {
//statements
}
讓我們看看下面的例子:
示例:帶字串的 for...in 迴圈
var j:any;
var n:any = "abc";
for(j in n) {
console.log(n[j])
}
編譯後,它將生成以下 JavaScript 程式碼:
var j;
var n = "abc";
for (j in n) {
console.log(n[j]);
}
它將產生以下輸出:
a b c
示例:帶陣列的 for...in 迴圈
const arr: number[] = [10,20,30];
for(var idx in arr){
console.log(arr[idx]);
}
編譯後,它將生成以下 JavaScript 程式碼。
const arr = [10, 20, 30];
for (var idx in arr) {
console.log(arr[idx]);
}
以上示例程式碼的輸出如下:
10 20 30
示例:帶元組的 for...in 迴圈
const tp:[string, number] = ['TypeScript',20]
for( var j in tp) {
console.log(tp[j])
}
編譯後,它將生成以下 JavaScript 程式碼。
const tp = ['TypeScript', 20];
for (var j in tp) {
console.log(tp[j]);
}
以上示例程式碼的輸出如下:
TypeScript 20
for...of 迴圈
for...of 迴圈是 for 迴圈的另一個變體。for...of 迴圈可以用來迭代可迭代物件的值。例如,我們可以使用 for...of 迴圈迭代陣列並從每個索引獲取值。
語法
TypeScript 中 for...of 迴圈的語法如下:
for (var element of iterable){
// statements
}
其中:
element - 可迭代物件的當前元素。
of - TypeScript 中的 ES6 運算子。
iterable - 可迭代物件,例如陣列、字串等。
示例:帶陣列的 for...of 迴圈
const arr: string[] = ["Tutorialspoint", "JavaScript", "TypeScript"];
for (var element of arr) {
console.log(element);
}
編譯後,它將生成以下 JavaScript 程式碼。
const arr = ["Tutorialspoint", "JavaScript", "TypeScript"];
for (var element of arr) {
console.log(element);
}
以上示例程式碼的輸出如下:
Tutorialspoint JavaScript TypeScript
示例:帶字串的 for...of 迴圈
let str: string = "Hello";
for (var char of str) {
console.log(char);
}
編譯後,它將生成以下 TypeScript 程式碼。
let str = "Hello";
for (var char of str) {
console.log(char);
}
以上示例程式碼的輸出如下:
H e l l o