循环的概念
- 重复的执行一段的代码,避免死循环,提高效率(时间复杂度(关注) 空间复杂度(不关注)),循环
- 包含三大语句。while语句,
- do while 语句 for语句。
循环的三要素
- 初始值(初始的变量值)
- 迭代量 (基于初始值的改变)
- 条件 (基于初始值的判断)
while语句
while循环一般都会有: 循环初始值, 循环条件 和 循环变量增量(或者减量)
while(条件表达式(返回true和false)){ 执行的代码 } var 初始值变量 = 值 while(条件){ 迭代量 执行的代码 }
do while语句
do-while循环一般也会有: 循环初始值, 循环条件 和 循环变量增量(或者减量)
do{ 执行的代码 }while(条件)
var 初始值 = 值 do{ 执行的代码 迭代量变化 }while(条件)
for 循环
for循环将 循环初始值, 循环条件, 循环变量增量写在了一起
for(初始值;条件;迭代量){ //执行的代码 跟if一样如果你执行的代码只有情况下可以省略{} }
示例
99乘法表
for(var i=1;i<=9;i++){ var str = "" for(var j=1;j<=i;j++){ str += j + "*" + i + "=" + i*j + "\t" } console.log(str) }
找出所有的水仙花数,三位数,各位立方和等于该数本身。
如: 153 = 1 ^ 3 + 5 ^ 3 + 3 ^ 3
for(var i=100;i<1000;i++){ //获取每位数 var a = parseInt(i/100) var b = parseInt(i/10%10) var c = parseInt(i%10) if(Math.pow(a,3)+Math.pow(c,3)+Math.pow(b,3)==i){ console.log(i); } }
循环嵌套 while循环
<script> do{ 外面执行3次 do{ 执行3次 }while() }while() 九次 while(){ 外面执行5次 while(){ 里面执行6次 } } 执行30次 </script>
do-while循环语法格式:
<script> do { 执行代码; } while(表达式) while循环 do做 // do while 先做后循环 // do while和while的区别就是 while可能一次都不做 do while 至少做一次 var isDw = false while(isDw){ console.log("我喝水了"); } //至少做一次 do{ console.log("我今天喝水了"); }while(isDw) //do while的写法 先做后判断(至少做一次) while 先判断后做 // var 初始值 // do{ // 循环体 // 迭代量 // }while(布尔表达式条件) </script>
break关键字
break的功能:
- 在switch语句中使流程跳出switch结构。for也一样它会跳出整个for块.
- 在循环语句中使流程跳出当前的循环
- 双层嵌套的循环,break在什么位置就结束当前位置循环
- break是结束本个循环
continue关键字
continue的功能:
只能在循环语句中使用,使本次循环结束,即跳过循环体中下面尚未执行的语句,接着进行下次是否执行循环的判断。
区别:
- continue语句只能用在循环里
- break作用在switch里面
- break是跳出本次循环 后面不会再运行 continue跳过这次循环 接着后面的走
- break做用再循环嵌套中 只会跳出本次循环 而不影响外层的循环