第一百零二章 循环

早晨,懒得做饭,毕竟做饭这种事情随随便便能鼓捣一天。去买点馒头充饥算了。一天这么长,我需要三个馒头充饥才能挨得过去。到了超市,我拿起一个馒头,开始思考:

够三个了吗?显然不够,继续。我拿起了第二个馒头,开始思考:

够三个了吗?显然不够,继续。我拿起了第三个馒头,开始思考:

够三个了吗?看起来够了,停止拿馒头这种行为,继续后面的计划,拿着馒头去柜台结账……

这里拿馒头的过程就是一个典型的循环,很多重复的操作都可以用循环来表达,今天我们来学习在 JS 里面如何写循环。

while(条件){// 条件达成就执行这里;// 执行完再去判断条件是否达成;// 如果条件依旧成立,再执行大括号里的代码;// 如果条件不成立,此循环结束,继续向下执行;}

while 是“当……的时候”的意思,这里是当条件成立就去做大括号里的事情,每做完一遍就再判断一下条件是否成立,成立则再执行,再判断……进行循环。如果不成立,则停止循环,继续向下执行。

举个例子:

let a = 0;while(a<5){console.log(a);a++;}

那么只要 a 小于 5,就输出 a 的值,然后给 a 加上 1。

然后再判断,现在 a 还小于 5 吗?

……

你看,这个过程我换着例子说了三次了,应该记住了哦~

循环经常配合着自增/自减使用,因为这样不断变化,条件才有一刻会变的无法达成,循环才会停止。如果我们的条件永远为真,那循环永无终止,这就是一个死循环,我们要避免这种情况的发生。

这就好像,我们两个吵了起来,然后开始动手,你打我一拳,我打你一拳,你再打我一拳,我再打你一拳……开始了循环。这时候就要有个劝架的出来,终止这种循环,否则,不打破这种循环的状态,就非得打死人不可了。

程序里的死循环,就意味着永无止息的执行下去,电脑表示心累累,开始发热,电扇呼啸,整个 Computer 都不好了。除非你强行杀死这个程序,才能结束。

所以,当我们写下一个循环,首先要想:它能不能自己结束循环。

但是有时候,条件不是靠自增/自减可以表达的,怎么办呢?

let a = true;let i = 1;while(a){i = i*2;if(i>1000){console.log(i);a = !a;}}

我想让 i 不断地乘以 2,直到 i 大于 1000 为止。但是我并不知道需要乘多少次,所以我让这个循环的条件(a)为真,就是一直运行,这样是个死循环。

但是注意大括号里面,我先让 i 乘以 2,然后判断现在的 i 是否大于 1000,如果大于 1000,则输出 i 的值,并且把这个循环的条件 a 改为相反的状态,那么以前 a 为真,现在就该为假了。于是,条件不成立,循环被结束。

这一章就这么多内容吧,大家自己假设一些循环的情况,并尝试用代码写出来哦~

原文链接:https://www.ek58.com/archives/3728,转载请注明出处。

0

评论0

请先

没有账号? 注册  忘记密码?