首頁 > web前端 > js教程 > JS迴圈學習:for迴圈語句的使用(範例詳解)

JS迴圈學習:for迴圈語句的使用(範例詳解)

青灯夜游
發布: 2022-08-03 18:45:52
原創
3332 人瀏覽過

在先前的文章《JS循環學習:while循環語句的使用(示例詳解)》中,我們簡單了解了while 循環和do while 循環,而今天再來介紹一種循環—— for 迴圈語句,希望對大家有幫助!

JS迴圈學習:for迴圈語句的使用(範例詳解)

一:for 迴圈

for迴圈會將控制迴圈次數的變數預先定義在for語句中,因此for迴圈語句能夠依照已知的循環次數進行循環操作,適用於明確知道腳本需要執行的次數的情況。

for 迴圈的語法格式如下:

for (初始化语句; 循环条件; 变量更新--自增或自减) {
    语句块;   
}
登入後複製

for迴圈語句可以拆解為4個部分:()號中的三個表達式和{}中的“語句塊”,下面我們來分析一下。

語句解析:

  • 初始化語句(表達式1):主要是初始化一個變數值,用來設定一個計數器,也就是迴圈開始的值;該語句僅在第一次迴圈時執行,以後都不會再執行。

  • 循環條件(表達式2):循環執行的限制條件,用於控制是否執行循環體中的程式碼;如果條件為TRUE,則循環繼續,如果條件為FALSE ,則循環結束,立即退出循環。

  • 變數更新(表達式3):一個帶有自增或自減操作的表達式,循環每執行一次,馬上修改計數器的值,以使循環條件逐漸變得「不成立」。

  • 語句區塊:條件判斷為真時,需要執行的若干程式碼。

上面的描述是不是有點繞,我們來看看for迴圈語句的執行流程圖,可以更直覺的了解for迴圈的執行過程:

JS迴圈學習:for迴圈語句的使用(範例詳解)

了解了for迴圈的執行過程,接下來我們來實際操作,做一個小題,來看看有沒有掌握吧!

範例:計算從1加到100的和

<script type="text/javascript">
	var sum=0;
	for(var i=1; i<=100; i++){
		sum+=i;
	}
	console.log(&#39;1 + 2 + 3 +...+ 99 + 100 = &#39;+sum);
</script>
登入後複製

JS迴圈學習:for迴圈語句的使用(範例詳解)

#for 迴圈中的三個表達式

JS for 迴圈中括號中的三個表達式是可以省略的,但是用來分隔三個表達式的分號不能省略,如下例所示:

// 省略第一个表达式
var i = 0;
for (; i < 5; i++) {
    // 要执行的代码
}
// 省略第二个表达式
for (var y = 0; ; y++) {
    if(y > 5){
        break;
    }
    // 要执行的代码
}
// 省略第一个和第三个表达式
var j = 0;
for (; j < 5;) {
    // 要执行的代码
    j++;
}
// 省略所有表达式
var z = 0;
for (;;) {
    if(z > 5){
        break;
    }
    // 要执行的代码
    z++;
}
登入後複製

#二:for 循環嵌套

無論是哪一個循環,都可以嵌套使用(即在一個循環中再定義一個或多個循環)。

語法格式:

for (初始化语句1; 循环条件; 变量更新--自增或自减) {
    //语句块1;   
    for (初始化语句2; 循环条件; 变量更新--自增或自减) {
        //语句块2;
        for (初始化语句3; 循环条件; 变量更新--自增或自减) {
            //语句块3; 
            .....  
        }
    }
}
登入後複製

這裡,我們定義了三個for 迴圈的嵌套,當然,我們可以嵌套任意多個的for 迴圈。

案例:for迴圈實作九九乘法口訣表

#首先我們來觀察一下九九乘法口訣表

JS迴圈學習:for迴圈語句的使用(範例詳解)

可以得到圖表的法則:

  • 總共有9行9列,第幾行就有幾個表達式。

  • 第 i 行,表達式就從 i*1 開始,一直到 i*i 結束,並共有 i 個表達式(這個效果我們可以透過一次循環來實現)。

因此,需要使用雙重循環來控制輸出,外層循環控制行數i (i最小為1,最大為9),內層循環控制列j (j最小為1,最大等於i)。

實作程式碼:

for(var i = 1; i <= 9; i++){     //外层循环控制行
	for(var j = 1; j <= i; j++) //内层循环控制列
	{
		document.write(j+"*"+i+"="+j*i+"   ");
	}
	document.write("</br>");
}
登入後複製

輸出結果:

JS迴圈學習:for迴圈語句的使用(範例詳解)

#我們也可以向開頭圖那樣,將99乘法表放到一個表格裡輸出:

document.write("<table>");

for (var i = 1; i <= 9; i++) { //外层循环控制行
	document.write("<tr>");
	for (var j = 1; j <= i; j++) //内层循环控制列
	{
		document.write("<td>" + j + "*" + i + "=" + j * i + "</td>");
	}
	//换行,控制每行的输出几个表达式
	document.write("</tr>");
}
document.write("</table>");
登入後複製

然後加入css樣式,來修飾一下:

table {
	width: 600px;
	border-collapse: separate;
}

table td {
	border: #000 1px solid;
	text-align: center;
}
登入後複製

看看輸出結果:

JS迴圈學習:for迴圈語句的使用(範例詳解)

################################### #####【推薦學習:###javascript高階教學###】####

以上是JS迴圈學習:for迴圈語句的使用(範例詳解)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板