JS的基本语法: 流程控制

  1. 条件判断语句 if-else
  2. 条件分支语句 switch-case
  3. 循环语句 for while

一.if-else

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//①
if(条件表达式){ }
//②
if(条件表达式){
//执行的语句1;
}else{
//执行的语句2;
}
//③
if(条件表达式1){
//执行的语句1;
}else if(条件表达式2){
//执行的语句2;
}else if( 条件表达式3){
//执行的语句3;
}...{
}else{
//执行的语句;
}

[注意]

  1. 一旦满足某个条件表达式, 则进入其执行语句块执行, 执行完毕, 跳出当前的条件判断结构, 不会执行剩下的条件结构语句.
  2. 如果多个条件表达式之间为“互斥”关系, 多个结构可以上下调换顺序.
    如果多个条件表达式之间为“包含”关系, 要求条件表达式范围小的写在范围大的上面.

二.switch-case

1
2
3
4
5
6
7
8
9
switch(变量){
case1:
//break;
case2:
//break;
...
default:
break;
}

1.case后只能填写变量的值, 不能写范围.
2.default是可以省略的, 并且其位置也是灵活的, 但通常将其放在case语句之后.
3.一旦满足某个case语句, 则进入执行其操作, 直至遇到break或者程序终止.
4.若要判断的语句的条件满足switch变量的数据类型, 且值不多的情况下, 建议选择switch-case .
除此之外, 选择if-else.

三.循环语句

格式:①初始化条件②循环条件③迭代部分④循环体

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for(①;②;③){

}
//

while(②){


}
//

do{


}while(②);

注意 1.不同的循环结构之间可以相互转换
   2.while和do-while的区别; do-while程序至少会执行一次

嵌套循环: 上述循环体嵌套循环体
若外层循环执行m次, 内层循环执行n次, 整个程序执行m*n次 .

无限循环结构: 我们往往会在无限循环结构内部提供循环的终止条件, 使用break关键字跳出循环.避免死循环.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for(;;){
...
if( ){
break;
}
...
}
//或者
while(true){
...
if( ){
break;
}
...
}

break&continue

使用switch-case结构或者循环结构中
在循环结构中, 一旦执行到break, 就跳出当前循环 .

continue:
使用在循环结构中, 一旦执行到continue, 就跳出当次循环, 继续执行下一次循环.

1
2
3
4
5
6
7
for(var i = 1;i <= 10;i++){
if(i % 4 == 0){
//break; //程序执行结果:123
continue; //程序执行结果:123567910
}
console.log(i);
}

在嵌套循环中, 使用带标签的break和continue.

1
2
3
4
5
6
7
8
9
10
11
label:for(var i = 1;i < 5;i++){
for(var j = 1;j <= 10;j++){
if(j % 4 == 0){
//break;
//continue;
//break label;
continue label;
}
console.log(j);
}
}

例题: 求100以内的素数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var n = 100;
for(var i = 2;i <= n;i ++){
var m = Math.floor(Math.sqrt(i));
var flag = true;
for(var j = 2;j <= m;j ++){
if(i % j == 0){
flag = false;
break;
}
}
if(flag){
console.log(i);
}
}

评论