Javascript核心读书有感之语句(7)

可以发现,在这个例子中,变量count的初始值为0,在循环的过程中,它的值每次都递增1,当循环执行了十次。表达式的值就编程了false,这时while就会结束,javascript解释器将执行程序下一条语句。大多循环都有一个像count这样的计数器变量。尽管计数器常用i j k这样的变量名,但如果想让代码的可读性更强,就应当使用更具体的语法名。

ii.do/while

do/while循环和while循环非常相似,只不过它是在循环的尾部而不是顶部检测循环表达式,这就意味这循环体至少执行一次。do/while循环的语法如下:

复制代码 代码如下:


            do
            statement
            while(expression);

do/while循环并不像while循环那么常用。这是因为在实践中想要循环至少执行一次的情况并不常见。下面是一个do/while循环的例子

复制代码 代码如下:


            function printArray(a) {
                var len = a.length,
                    i = 0;
                if (len == 0)
                    console.log("空数组");
                else
                    do {
                        console.log(a[i]);
                    } while (++i < len);

}
            printArray([1,5,2,6])

在do/while循环和普通while循环之间有两点语法方面的不同之处。首先,do循环要求必须使用关键字do来标识循环的开始,用while变标识循环的结尾并进入循环条件判断;其次,和while循环不同,do循环使用分号结尾的。如果while的循环体使用花括号括起来,则while循环也不使用分号结尾。

iii.for

for语句提供了一种比while更方便的循环语句控制结构。for语句对常用的循环模式做了一些简化。大部分的循环都具有特定的计数器变量。在循环开始之前要初始化这个变量,然后在每次循环之前检查下它的值。最后,计数器变量做自增操作,否则就在循环结束后、下一次判断前做修改。在这类循环中,计数器的三个关键操作是初始化、检测和更新。for语句就将这三部操作明确声明为循环语法的一部分,各自使用一个表达式来表示。for语句的语法如下:

复制代码 代码如下:


            for (initialize; test; increment)
                statement

intialize、test、increment三个表达式之间使用分号分隔,他们负责初始化操作、循环条件判断和计数器变量的更新。将它们放在循环的第一行会更容易理解for循环正在做什么,而且也可防止忘记初始化或者递增计数器变量。

要解释for循环是怎么样工作的,最简单方法就是列出一个与之等价的while循环

复制代码 代码如下:


            initialize
            while (test) {
                statement
                increment;
            }

换句话说,initialize表达式只在循环 开始之前执行一次。初始化表达式应当具有副作用(通常是一条赋值语句)。javascript同样允许初始化表达式中带有var变量声明语句,这样的话就可以声明并初始化一个变量。每次循环之前会执行test表达式,并判断表达式的结果来决定是否执行循环体。每次循环之前会执行test表达式,并判断其结果是否来执行循环体,如果test结果为真值,则执行循环体中的statement。最后,执行increment表达式。同样为了有用起见,这里的increment表达式也必须有副作用。通常来讲,它不是一个赋值表达式就是一个由“++”、“--”运算符构成的表达式。

上文的while循环可以使用for循环来从写

复制代码 代码如下:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgffjf.html