快速复习一遍JavaScript(五)· 代码块

代码块

  1. 程序是由一条一条语句构成的,语句是按照自上向下的顺序一条一条执行的
  2. 在JS中可以使用{}来为语句进行分组
    • 同一个{}中的语句成为一组语句,它们要么都执行,要么都不执行
    • 一个{}中的语句也称作一个代码块,代码块的后面就不用再编写;了
  3. JS中的代码块只具有分组的作用,没有其他的用途,代码块内的内容外部是完全可见的

(一)流程控制语句

  • 通过流程控制语句可以控制程序执行流程,使程序可以根据一定的条件来选择执行
  • 语句的分类:
    1.条件判断语句
    2.条件分支语句
    3.循环语句

(二)条件判断语句

  • 使用条件判断语句可以在执行某个语句之前进行判断,如果条件成立才会执行语句,不成立则不执行
  • if 语句:该语句中只会执行一个代码块,一旦执行了,则不再往下进行
    • 语法一:

        if(条件表达式)	
        {代码块}
      
    • 语法二:

        if() {}
        else {}
      
    • 语法三:

        if() {}
        else if() {}
        else {}
      
if(true)
	console.log("true执行");
			
var a = 15;
if(a > 10 && a < 15){
	console.log("10 < a < 20");
}

(三)prompt函数

prompt()可以弹出一个提示框,该提示框会带有一个文本框,该用户可以在文本框中输入一段内容

  • 该函数需要一个字符串作为参考,该字符串将会作为提示框的提示文字
  • 用户输入的内容是String类型,将会作为函数的返回值返回,可以定义一个变量来接收该内容
var num1 = +prompt("请输入数值1:");
var num2 = +prompt("请输入数值2:");
var num3 = +prompt("请输入数值3:");
console.log(num1, num2, num3)
var max, middle, min;
			
if(num1 >= num2){
	if (num1 >= num3){
		max = num1;
		if(num2 >= num3){
			middle = num2;
			min = num3;
		}else{
			middle = num3;
			min = num2;
		}
	} else if(num2 >= num3){
		max = num2;
		middle = num3;
	} else{
		middle = num3;
		min = num2;
	}
} else if(num2 >= num3){
	max = num2;
	if(num1 > num3){
		middle = num1;
		min = num3;
	}else{
		middle = num3;
		min = num1;
	}
} else {
	max = num3;
	middle = num2;
	min = num1;
}
			
console.log(max + ">=" + middle + ">=" + min);
			

(四)switch语句

switch语句:条件分支语句

  • 语法:

      switch(条件表达式){
      	case 表达式:
      		语句...
      		break;
      	case 表达式:
      		语句...
      		break;
      	case 表达式:
      		语句...
      		break;
      	default:
      		语句...
      		break;
      }
    
  • 执行流程:
    switch…case…语句
    在执行时会依次将case后的表达式的值和switch后的条件表达式的值进行全等比较
    如果比较结果为true,则从当前case处开始执行代码,当前代码之后的都会执行
    使用break可以退出switch语句,每个case后面执行一个break,确保只执行当前语句
    如果比较结果为false,则继续向下比较

var score = +prompt("请输入成绩");
switch(true){
	case score >= 60:
		console.log("合格");
		break;
	default:
		console.log("不合格");
		break;
}

(五)循环语句

  • 创建一个循环往往需要三个步骤

      1.初始化一个变量
      2.在循环中创建一个条件表达式
      3.定义一个更新表达式,每次更新初始化变量
    
  • while循环

    1. 语法:

       	while(条件表达式){
       		语句...
       	}
      
    2. while语句在执行时,先对条件表达式进行求值判断

       如果值为true,则继续执行循环体,循环体执行完毕之后,继续对条件表达式进行判断,如果为true继续执行循环体,以此类推
       如果值为false,则终止循环
      
  • do…while循环:

    1. 语法:

       do{
       	语句...
       }while()
      
    2. 执行流程:
      do…while语句先执行循环体再进行条件表达式

  • for 循环

    1. 语法:

       for(初始化表达式;条件表达式;更新表达式){
       	语句...
       }
      
    2. 执行流程:

       1)执行初始化表达式,初始化变量
       2)执行条件表达式,如果为true,执行循环语句,如果为false终止循环
       3)执行更新表达式,更新表达式执行完毕重新执行条件表达式
      
    3. for循环中的三个部分都可以省略,也可以写在外面

    4. for循环中如果三个表达式都不写,只写两个分号,则是个死循环

// while循环
var begin = 1000, year = 0;
while(begin < 5000){
	begin = begin * 1.05
	year++;
}
console.log(year);

// for循环
var total = 0;
for(var i = 1;i <= 100;i++){
	if(i % 2 != 0){
		total = total + i;
	}
}
console.log("total = "+total);

// 七的倍数问题
var sevennum = 0, sevensum = 0;
for(var i = 1;i <= 100;i++){
	if(i % 7 == 0){
		sevennum++;
		sevensum = sevensum + i;
	}
}
console.log("sevennum="+sevennum, "sevensum="+sevensum);

// 水仙花问题		
console.log("水仙花");
for(var i = 100;i <= 999;i++){
	var flower1 = parseInt(i / 100);
	var flower2 = parseInt(i % 100 / 10);
	var flower3 = parseInt(i % 10);
	var flowersum = flower1*flower1*flower1+flower2*flower2*flower2+flower3*flower3*flower3;
	flowersum
	if(flowersum == i){
		console.log(i);
	}
}

console.log("质数问题");
var number = +prompt("请输入一个大于1的自然数来判断是不是质数:")
var sta = 0;
for(var i = 2;i <number;i++){
	if(number%i==0){
		sta++;
	}
}
if(sta == 0){
	console.log("您输入的是个质数");
}else{
	console.log("您输入的不是质数");
}
			
console.log("开始画图啦");
var line = +prompt("请输入层数:");
for(var i = 1;i<=line;i++){
	for(j = 1;j <= i;j++){
		document.write("*");
	}
	document.write("</br>");
}
			
console.log("打印九九乘法表啦");
for(var i = 1;i <= 9;i++){
	for(j = 1;j <= i;j++){
		ji = i*j;
		document.write("<span>"+j+"*"+i+"="+i*j+"</span>");
	}
	document.write("<br />");
}

(六)break 和 continue

  • break关键字可以用来退出switch或循环语句,break关键字会立即终止离他最近的那个循环语句
  • 可以为循环语句创建一个label,来表示当前的循环
    格式:label:循环语句
    使用break语句时,可以在break后跟着一个label,这样break将会结束制定的循环,而不是最近的
    • continue关键字可以用来跳过当前循环,进入下一轮循环,同时continue也是默认对最近的循环起作用
// 循环起名-区别内外层
outer:
for(var i=0;i<5;i++){
	console.log("@外层循环"+i);
	for(var j=0;j<5;j++){
		break outer;
		console.log("#内层循环:"+j);
	}
}
<style type="text/css">
	span{
		display: inline-block;
		width: 80px;
	}
</style>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值