javaScript的三大结构

  • 一.js代码执行的三大结构
  • 二.顺序结构
  • 三.条件语句(if语句和switch语句)
  • 1.选择语句(if语句)
  • 2.switch语句
  • 3.三元运算符 ?:
  • 四.循环语句(while循环、do-while循环和for循环)
  • 1. 循环的概念
  • 2. while循环
  • 3. do-while循环
  • 4. for循环
  • 五.控制循环关键字
  • 1. break
  • 2. continue
  • 六.标签(label)


一.js代码执行的三大结构

  1. 顺序:从上朝下执行的代码就是顺序.
  2. 选择:根据不同的情况, 执行对应代码(条件语句)
  3. 循环:重复做一件事情

二.顺序结构

顺序结构是最简单的程序结构, 它是由若干个依次执行的处理步骤组成 .只有执行上一个语句之后, 才能执行下一个语句.

JavaScript程序的执行单位为行(line), 也就是一行一行地执行. 一般情况下, 每一行就是一个语句.

例1: 输入两个数, 然后交换这两个数, 再输出他们交换后的结果

//题目:输入两个数, 然后交换这两个数, 再输出他们交换后的结果
var num1 = 2;
var num2 = 3;
var tmp = num1;
num1 = num2;
num2 = tmp;
console.log("num1:"+num1+",num2"+num2);//num1:3,num2:3

三.条件语句(if语句和switch语句)

1.选择语句(if语句)

  1. 格式:
    if(条件表达式1){
    执行语句1;
    }else if(条件表达式2){
    执行语句2;
    }else{
    执行语句3;
    }
  2. 过程: 先去判断括号中的条件表达式1, 如果成立, 执行紧跟着if语句中大括号中的语句. 否则判断条件表达式2, 如果成立执行语句2.否则执行语句3;
  3. 条件表达式为Boolean类型, 可以写true

例2: 判断一个正数为奇数还是偶数

var num = 10;
if(num % 2 == 0){
    console.log("这是一个偶数");
}else{
    console.log("这是一个奇数");
}

例3:判断一个年份是闰年还是平年

闰年的条件: 1. 可以被400整除 2. 可以被4整除, 但是不能被100整除

var year = 2020;
if(year % 400 == 0 || year % 4 == 0 && year % 100 != 0){
    console.log("这是闰年");
}else{
    console.log("这是平年");
}

2.switch语句

多个if...else连在一起使用的时候,可以转为使用更方便的switch结构。

  1. 格式:
    switch(表达式){
    case 常量1: 语句; break;
    case 常量2: 语句; break;
    case 常量3: 语句; break;

    case 常量n: 语句; break;
    default:语句: break;
    }
  2. 过程: 表达式的结果等于那个case的常量, 则执行其后的语句, 执行完break就跳出switch结构, 都不满足则执行default的语句.

3.三元运算符 ?:

  1. 格式: (条件) ? 表达式1 : 表达式2
  2. 过程: 如果条件为true, 则返回表达式1的值, 否则返回表达式2的值

四.循环语句(while循环、do-while循环和for循环)

1. 循环的概念

循环就是重复多次执行某一个代码块. 循环体重应有结束循环的条件, 否则会造成死循环.

2. while循环

  1. 格式:
    while(条件表达式){
    代码块;
    }
  2. 过程: 条件表达式为Boolean类型, 如果为真则执行代码块;
  3. 执行顺序: 先判断再执行

3. do-while循环

  1. 格式:
    do{
    代码块;
    }while(条件表达式)
  2. 过程: 先执行一遍代码块, 然后判断条件表达式. 如果结果为true, 继续执行, 如果执行一次就停止执行. 所以do-while无论条件符不符合, 代码块最低执行一次.
  3. 执行顺序: 先执行一遍再判断

4. for循环

  1. 格式
    for(表达式1:表达式2 : 表达式3){
    代码块;
    }
  2. 过程: 先求解表达式1(只求一次); 求解表达式2, 若其值为真, 则执行for语句中指定的内嵌语句, 然后求解表达式3; 再求解表达式2, 若为假, 则结束循环.
  3. 作用: 可以用于不确定循环次数的循环

例: 计算1+2+3+…+100之和

var num = 0;
for(var i = 1; i <=100; i++){
    num += i;
}
console.log(num);

五.控制循环关键字

1. break

break的作用: 是跳出循环结构, 不再执行循环体中的语句.

2. continue

作用: 跳出本次循环, 会执行后面的循环

六.标签(label)

  1. JavaScript语言允许, 语句的前面有标签(label), 相当于定位符, 用于跳转到程序的任意位置, 标签的格式如下.
label:
	语句
  1. 标签可以是任意的标识符, 但不能是保留字, 语句部分可以是任意语句.
  2. 标签通常与break语句和continue语句配合使用, 跳出特定的循环
top:
	for(var i = 0; i < 3; i++){
        for(var j = 0; j < 3; j++){
            if(i === 1 && j === 1) break top;
            console.log('i=' + i + ', j=' + j);
        }
    }
// i=0, j=0
// i=0, j=1
// i=0, j=2
// i=1, j=0
top:
	for(var i = 0; i < 3; i++){
    	for(var j = 0; j < 3; j++){
        	if(i === 1 && j === 1) continue top;
        	console.log('i=' + i + ', j=' + j);
    	}
    }
// i=0, j=0
// i=0, j=1
// i=0, j=2
// i=1, j=0
// i=2, j=0
// i=2, j=1
// i=2, j=2