詳解js中的for循環原理,看了就能懂

最近很多初學者都問我關於js中for循環的問題,我簡單的說一下,for循環可以說是js中最常用的循環形勢,初學者剛剛接觸的時候會有點懵。

假設我們要求1到100的和,這時候就需要用到for循環了,我們這次不做實際應用只講原理。不多說上代碼;

var sum=0

for(var i=1;i<=100;i++){

sum=sum+i

}

document.write(sum)

原理分析;

我們正常算1到100的和是這樣算的:

1+2=3/3+3=6/6+4=10/10+5=15/15+6=21···········這樣一直加到100,結果為5050

所以我們定義一個變量來承載這個數與下一個數相加,這就是為什麼要寫var sum=0

for(var i=1;i<=100;i++){

sum=sum+i

}

其中‘i=1’是初始化表達式,i<=100是條件表達式,i++是條件改變。sum=sum+i是循環體

在js中for循環的執行順序是,先執行初始化表達式,再執行條件表達式,然後執行循環體(注意是執行循環體)循環體結束之後再執行條件改變。

這個for循環的原理是;

//sum等於0.用sum與i相加,相加之後賦值給sum,這時候sum=1,然後用執行條件改變i=2,

原理分解;

//1.執行初始化表達式i=1,

//2.執行條件表達式(1<=100)

//3.執行循環體sum等於0與i相加之後付值給sum,這時候sum=1

//4.執行條件改變i++,這時候i=2

//5.執行初始化表達式i=2

//6.執行條件表達式)(2<=100)結果為true

//7.執行循環體sum等於1與等於2的i相加結果等於3,並把3付值給sum

//8/執行條件改變i++,這時候i=3

//9.執行初始化表達式i=3

//10.執行條件表達式(3<=100)結果為true

//11.執行循環體sum=3與等於3的i相加等於6並賦值給sum

//12.執行條件改變i++這時候i=4

//13.執行初始化表達式i=4

//14.執行條件表達式(4<=100)結果為true

//15.執行循環體sum等於6與等於4的i相加結果為10並付值給sum

這樣一直循環下去直到加到100,結果等於5050,拆分之後就會發現在for循環中只要分清執行順序再理解就不難了。


分享到:


相關文章: