条件语句

条件语句是通过判断指定表达式的值来决定执行还是跳过某些语句,最基本的条件语句:

if…else
switch…case
if…else
if…else语句是一种最基本的控制语句,它让JavaScript可以有条件的执行语句。

第一种形式:

if(expression)
    statement

var age = 16;
if (age < 18) {
    console.log("未成年");
}

第二种形式:

if(expression)
    statement
else
    statement

var age = 16;
if (age < 18) {
    console.log("未成年");
} else {
    console.log("已成年");
}

第三种形式:

if(expression1)
    statement
else if(expression2)
    statement
else
    statement    

var age = 18;
if (age < 18) {
    console.log("小于18岁了");
} else if (age == 18) {
    console.log("已经18岁了");
} else {
    console.log("大于18岁了")
}

switch…case
switch…case是另一种流程控制语句。

switch语句更适用于多条分支使用同一条语句的情况。

语法格式:

switch (语句) {
    case 表达式1:
        语句...
    case 表达式2:
        语句...
    default:
        语句...
}

注意:需要注意的是一旦符合case的条件程序会一直运行到结束,所以我们一般会在case中添加break作为语句的结束。

案例演示1:根据today的数值,输出今天是星期几。

var today = 1;
switch (today) {
    case 1:
        console.log("星期一");
        break;
    case 2:
        console.log("星期二");
        break;
    case 3:
        console.log("星期三");
        break;
    case 4:
        console.log("星期四");
        break;
    case 5:
        console.log("星期五");
        break;
    case 6:
        console.log("星期六");
        break;
    case 7:
        console.log("星期日");
        break;
    default:
        console.log("输入错误");
}

案例演示2:根据month的数值,输出对应月份的天数,2月默认28天。

var month = 10;
switch (month) {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
        console.log("31天");
        break;
    case 4:
    case 6:
    case 9:
    case 11:
        console.log("30天");
        break;
    case 2:
        console.log("28天");
        break;
    default:
        console.log("输入错误");
}

循环语句

循环语句和条件语句一样,也是基本的控制语句,只要满足一定的条件将会一直执行,最基本的循环语句:

while
do…while
for

while
while语句是一个最基本的循环语句,while语句也被称为while循环。

语法格式:

while(条件表达式){
    语句...

案例演示:输出1-10。

var i = 1;
while (i <= 10) {
    console.log(i);
    i++;
}

do…while
do…while和while非常类似,只不过它会在循环的尾部而不是顶部检查表达式的值,因此,do…while循环会至少执行一次。相比于while,do…while的使用情况并不 是很多。

语法格式:

do{
    语句...
}while(条件表达式);

案例演示:输出1-10。

var i = 1;
do {
    console.log(i);
    i++;
} while (i <= 10);

for

for语句也是循环控制语句,我们也称它为for循环。大部分循环都会有一个计数器用以控制循环执行的次数, 计数器的三个关键操作是初始化、检测和更新。for语句 就将这三步操作明确为了语法的一部分。

语法格式:

for(初始化表达式 ; 条件表达式 ; 更新表达式){
    语句...
}

案例演示:输出1-10。

for (var i = 1; i <= 10; i++) {
    console.log(i);
}

跳转控制

break:结束最近的一次循环,可以在循环和switch语句中使用。
continue:结束本次循环,执行下一次循环,只能在循环中使用。
那如果我们想要跳出多层循环或者跳到指定位置该怎么办呢?可以为循环语句创建一个label,来标识当前的循环,如下例子:

outer: for (var i = 0; i < 10; i++) {
    for (var j = 0; j < 10; j++) {
        if (j == 5) {
            break outer;
        }
        console.log(j);
    }
}