学习JS的第三天
一、逻辑分支(续)
1、三目运算符:条件运算符
a>b?c:d;表达式1?表达式2:表达式3;
根据表达式1执行的结果,来决定执行表达式2还是表达式3
表达式1结果是true执行表达式2,最终返回表达式2的结果
表达式1结果是false执行表达式3,最终返回表达式3的结果
2、Switch/case
语法:
switch(表达式){
case 表达式1:分支语句一;
break;
case 表达式2:分支语句二;break;
case 表达式3:分支语句三;break;
…
case 表达式n:分支语句n;break;
default:默认分支语句;break;
}
规范:
1.所有的括号成对输入
2.所有的双引号成对输入
3.一句话占一行(不用多句话写在一行)
4.花括号单独占一行
5.缩进对齐:
a)同级对齐
b)子一级比上一级缩进4个空格
注意点:
1.if后面的()不能省略,()后面不要加分号
2.if分支中即使一句话也要把{}写上(一行代码3块钱)
3.if嵌套不要超过五层(最好不要超过3层)
4.Switch语句里把default分支一定要写上,防止在以后的维护中产生歧义(default:相当于if else最后的else)
把执行概率更大(正常情况)放在前面(if,case)
5.if else 和 switch用谁?
判断范围用if else ,等值一般用switch;
一个简单的成绩等级划分
1 var score =100;
2
3 switch(parseInt(score/10)){
4
5 case 10:
6
7 case 9:
8
9 console.log("A");
10
11 break;
12
13 case 8:
14
15 console.log("B");
16
17 break;
18
19 case 7:
20
21 console.log("C");
22
23 break;
24
25 case 6:
26
27 console.log("D");
28 break;
29
30 default :console.log("E");
31 }
二、循环
1、while /do while
/*
while条件表达式()
循环体;
*/
1、条件表达式是一个boolean值,为true则执行循环体,为false则跳出,并且只能修饰一条语句;
2、执行顺序,先条件,再语句;
3、一个有限次的循环,必须有一个使循环趋近于结束的条件,
4、死循环是好还是坏??看情况(输入密码账号错误的时候)
while 练习:
//小于100的数的和
1 var sum = 0; 2 var i = 1; 3 4 while (i <= 100) { 5 sum += i; 6 i++; 7 } 8 9 console.log(i,sum);
//入职薪水10K,每年涨幅5%,50年后工资多少?
1 var salary = 10000; 2 var i = 1; 3 4 while(i<=50){ 5 salary *= 1+0.05; 6 i++; 7 } 8 9 console.log(salary);
//打印100以内7的倍数
1 var i = 1; 2 3 while(i<=100){ 4 if(i%7==0){ 5 console.log(i); 6 } 7 i++; 8 } 9
//打印100以内的奇数
1 var i = 1; 2 3 while(i <= 100){ 4 if(i%2){ //1 == true 5 console.log(i); 6 } 7 i++; 8 }
2、do while
***结构***
do{
循环体;
}while(条件表达式);
while和do while的区别和不同
while与do while唯一的区别
执行顺序不同
do...while先语句在条件
while 先条件在语句
do...while与while 异同
当首次条件成立时,这俩没区别
当首次条件不成立时,do...while执行一次循环体,while直接跳出
3、for
for(表达式1;表达式2;表达式3){1243243243...
表达式4
}
for(;;){} 绝对不能省略,除此之外表达式1234都能省略
表达式1:为循环变量赋初值
表达式2:条件
表达式3:使循环趋近于结束的条件
表达式4:循环体语句
1 var sum = 0; 2 3 for(var i=1; i <= 100;i++){ 4 sum += i; 5 } 6 7 console.log(i, sum);

浙公网安备 33010602011771号