在 JavaScript 中,for 循環是一個常用的控制結構,可以讓程序按照一定的規律重復執行一組語句。當需要嵌套多個循環時,就需要使用雙重 for 循環語句了。
雙重 for 循環語句的基本結構如下:
for (let i = 0; i < outerLength; i++) {
for (let j = 0; j < innerLength; j++) {
// 內部循環代碼
}
// 外部循環代碼
}
雙重 for 循環語句包含兩個循環控制變量,一個用于外層循環,一個用于內層循環。在每次外層循環開始時,內層循環都會從頭開始,直到完成全部循環。外層循環和內層循環都可以使用 break 和 continue 控制語句來中斷循環或跳過某些迭代。
雙重 for 循環語句經常用于嵌套數組或對象的遍歷操作。例如,我們可以使用雙重 for 循環來遍歷一個二維數組,對數組中的每一個元素進行操作:
const matrix = [ [1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
for (let i = 0; i < matrix.length; i++) {
for (let j = 0; j < matrix[i].length; j++) {
console.log(matrix[i][j]);
}
}
在這個例子中,外層循環遍歷了數組 matrix 中的每一個元素(即數組 [1, 2, 3]、[4, 5, 6] 和 [7, 8, 9]),內層循環遍歷了每一個數組元素中的子元素(即數字 1 到 9)。
雙重 for 循環語句的時間復雜度通常是 O(n^2),其中 n 是要遍歷的元素個數。因此,在實際應用中,要盡可能避免使用多層嵌套的循環,以提高程序的效率和性能。