代码块:
在JS中,可以用{}对语句进行分组,相同的组内语句,要么都执行,要么都不执行。每组语句被称为一个代码块,大括号只有分组作用。
流程控制语句:
- 条件判断语句
- 条件分支语句
- 循环语句
条件判断语句
语法一:
if(条件表达式)
语句
if语句只能控制紧随其后的语句,如果要控制多条语句,可以将这些语句统一放到代码块中。
var a = 10;
if (a > 10){
alert("a比10大");
alert("我也要执行");
}
语法二:
if (条件表达式){
语句1
}else{
语句2
}
语法三:
if (条件表达式){
语句1
}else if{
语句2
}else if{
语句3
}else {
语句4
}
prompt()函数
prompt()函数可以弹出一个带有文本框的提示框,用户输入的内容将会作为函数的返回值。
var score = prompt("请输入成绩:");
var num1 = +prompt("请输入num1:");
var num2 = +prompt("请输入num2:");
var num3 = +prompt("请输入num3:");
var max = num1 > num2? num1 : num2;
max = num3 > max? num3:max;
console.log(max);
条件分支语句(switch语句)
语法:
switch(条件表达式){
case 表达式:
语句
break;
case 表达式:
语句
break;
default:
语句
break;
}
switch...case...语句,在执行时,会将case后的表达式和switch后的条件表达式的值进行全等比较:
- 如果比较结果为true,则从当前case出开始执行代码,如果不加break(退出循环),后面所有代码都会被执行;
- 如果比较结果为false,则继续向下比较。
- 如果所有比较结果都为false,则执行
default后的语句。
该语句功能和if语句重复,可以根据习惯选择。
switch(true){
case score >= 60:
console.log("合格")
break;
default:
console.log("不合格")
break;
}
循环语句
1.while循环:
var n = 1;
while(n < 10){
document.write(n++ + "<br/>");
}
2.do{}while()循环
var n = 1;
do{
document.write(n++ + "<br/>");
}while(n < 10)
3.for循环
语法:
for(初始化表达式;条件表达式;更新表达式){语句}
for(var i = 0; i < 10 ; i++ ){
alert(i);
}
for循环执行流程:先执行初始化表达式,然后执行条件表达式,如果条件成立,则执行语句,如果条件不成立,则退出循环,最后执行更新表达式。
在for循环中,三个部分都可以省略,也可以写在外部。
var i = 0;
for(;i<10;){
alert(i++);
}
水仙花数:
for(var i=100, result = 0;i<1000; i++){
var a = parseInt(i/100);
var b = parseInt((i-a*100)/10);
var c = i % 10;
if (a*a*a + b*b*b +c*c*c == i){
document.write(i + "<br/>");
}
}
质数:
var num = prompt("请输入一个数字:");
if (num <=1) {
alert("该值不合法");
}else{
flag = true;
for (var i = 2;i < num ; i++){
if (num%i == 0){
flag = false;
document.write(num + "不是质数");
break;
}
}
if (flag){
document.write(num + "是质数");
}
}
理解此处flag的意义。
因为因数是成对出现的,所以在内部循环时,只需要执行到两个因数相等的情况。在JS中,可以使用Math.sqrt()对一个数进行开平方。内部循环将检查的最大因数改为Math.sqrt(num)
嵌套for循环:
for(var i=0;i<5;i++){
for(var n=0;n<i+1;n++){
document.write("* ");
}
document.write("</br>")
}
这道题是九九乘法表的前身
for(var i=1;i<=9;i++){
for(var n=1;n<i+1;n++){
document.write(n+"*"+i+"="+i*n+" ");
}
document.write("</br>")
}
加css格式:
<script type="text/javascript">
for(var i=1;i<=9;i++){
for(var n=1;n<i+1;n++){
document.write("<span>"+n+"*"+i+"="+i*n +"</span>");
}
document.write("</br>")
}
</script>
<style type="text/css">
span{
display: inline-block;
width: 80px;
}
</style>
break
break:
- 可以用来退出循环
- 只能用于循环语句,不能用于单独的
if语句 - 只对离他最近的循环起作用
如果想要终止外层循环,可以给外层循环起一个名字(label),然后在break后面加上这个名字。
continue
continue:
- 可以跳过当次循环。
- 只对离他最近的循环起作用
计时器
可以通过console.time("name")开启一个计时器,通过console.timeEnd("name")关闭计时器。这样就可以在控制台看到中间程序执行的时间。
本文详细介绍了JavaScript中的流程控制语句,包括条件判断语句、条件分支语句(switch语句)、循环语句(for、while、do...while)以及break和continue的用法。此外,还探讨了如何使用计时器来控制程序执行时间。
2082

被折叠的 条评论
为什么被折叠?



