Skip to content

第二章 流程控制


★前加与后加

++1和1++不参与其它运算的时候结果对我们来说是一样的。

赋值与自加的顺序不同。

若参与表达式:

​ ++1:

html
let a = b + ++n
相当于:
let a = b + (n = n + 1)

​ 1++:

let a = b + n++
相当于:
let a = b + n, n = n + 1

三元表达式

三层结构:

第一层: 问号之前

第二层: 问号后(结果1);

第三层:冒号后(结果2);


switch

js
switch () {
	case ():
	xxx
	break;

	default:
	xxx
}

需要注意的是,当主判断为true时,即无条件执行switch语句。相当于if

switch(true) {
	case():
	xxx
	break;

	default:
	xxx
}

while

判断表达式可以为多个条件!

while (i-- !=0) {
	xxx
}

do while:

do{
	xxx
} while() {

}

先执行do里的程序再执行while循坏里的语句。

do里的语句很多为赋值语句。


continue

continue是跳过当前循环,直接进入下一个循环。


★label标签

任何语句中都可以添加label标签,标签起到定向的作用。

(蛮有用的)


for in & for of

for in遍历,取索引。

​ 取索引的时候,通过方法调取的话需要用[]的形式

js
for (const key in grade) {
        console.log(grade[key]);
    }

for of 遍历,取值。