JS中的两个for循环如何解读,我被弄晕了。本人初学者。

JavaScript014

JS中的两个for循环如何解读,我被弄晕了。本人初学者。,第1张

break这个语句是跳出当前循环的意思,也就是跳出第二个for循环,终止循环。

当外循环i=5时,

内循环从j=0 ---j=4都是执行的,但是当j=5时,内循环终止了,以及后边的j=6,7,8,9都不再执行;紧接着继续外循环i=6,继续内循环

var firstday = 3, lastday = 5, nday = 19

for (var m = 0 m < firstday m++) {

    document.write("<td>1</td>")

}

var nday = 0

for (var j = 0 j < (7 - firstday) j++) {

    if (nday > lastday) {

        break

    } else {

        document.write("<td>" + nday + "</td>")

    }

    nday += 1

}

这个是冒泡排序法的经典例子。

运行完后num数组会被被排序

for循环运行的次序是,外层先走一步,然后内层走完,然后外层再走一步,内层再走一圈。

具体来说,

i=0: j依次遍历0,1,2,3,4,5,6,7,程序比较num[0]和num[0-7],只要发现num[0]比某一个数大,就把num[0]和此数交换

这样一来当i=0的时候,j走了一圈后的结果就是把数组的第一个数,也就是num[0]弄成了整个数组中最小的数(也就是3)

接下来i=1j依次遍历1,2,3,4,5,6,7

结果是num[1]变成剩下数中最小的(也就是5)

然后i=2j遍历2,3,4,5,6,7

i=3;j走过3,4,5,6,7

.

.

.

最后的结果就是数组被排序了。