一、if 控制语句
- 简单if语句:
if(条件表达式){
表达式成立时执行的代码段
}
注意 : 除零值以外,其他值都为真
特殊写法 : { }可以省略,一旦省略,if语句只控制其后的第一行代码
var a = 10;
if(a<5){
console.log('成立'); //如果if不成立则不运行
}
if(a<5)console.log('成立'); //如果if不成立则不运行
console.log('测试');
- if - else结构
if(条件表达式){
//条件成立时执行
}else{
//条件不成立时选择执行
- 多重分支结构
if(条件1){
//条件1成立时执行
}else if(条件2){
//条件2成立时执行
}else if(条件3){
//条件3成立时执行
}...else{
//条件不成立时执行
}
示例:
var bmi=23.5;
if(bmi>23.5){
console.log('肥胖')
}else if(bmi>=18.5){
console.log('正常')
}else{
console.log('偏瘦')
}
//正常
二、switch 选择控制语句
语法:
switch(value){
case 值1 :
//value与值1匹配全等时,执行的代码段
break; //结束匹配
case 值2 :
//value与值2匹配全等时,执行的代码段
break;
case 值3 :
//value与值3匹配全等时,执行的代码段
break;
default:
//所有case匹配失败后默认执行的语句
break;
}
使用 :
-
switch语句用于值的匹配,case用于列出所有可能的值;只有switch()表达式的值与case的值匹配全等时,才会执行case对应的代码段
-
break用于结束匹配,不再向后执行;可以省略,break一旦省略,会从当前匹配到的case开始,向后执行所有的代码语句,直至结束或碰到break跳出
-
default用来表示所有case都匹配失败的情况,一般写在末尾,做默认操作
-
多个case共用代码段
case 值1:
case 值2:
case 值3:
以上任意一个值匹配全等都会执行的代码段
注:case表示一个条件,满足这个条件就会进入该内部,遇到break则会跳出,若未写break则直到遇到下一个break才会停止。
var gameScore = 'better';
switch(gameScore){
//case表示一个条件 满足这个条件就会走进来 遇到break跳出。如果某个条件中不写 break,那么直到该程序遇到下一个break停止
case 'good':
console.log('玩的很好')
//break表示退出
break;
case 'better':
console.log('玩的老牛逼了')
break;
case 'best':
console.log('恭喜你 吃鸡成功')
break;
default:
console.log('很遗憾')
}
三、while 循环控制语句
语法:
定义循环变量;
while(循环条件){
条件满足时执行的代码段
更新循环变量;
}
示例:
//循环变量
var i = 1;
var sum=0;
while(i<101){
//循环体
console.log(i);
sum+=i;
//更新循环变量
i++;
}
console.log(sum);
四、do-while 循环
语法:
do{
循环体;
更新循环变量
}while(循环条件);
示例:
//循环输出一百次
var i = 101;
do{
console.log('python');
//更新循环变量
i++;
}while(i<101);
do-while与while循环的区别:
- while循环先判断循环条件,条件成立才执行循环体
- do-while循环不管条件是否成立,先执行一次循环体
五、for 循环控制语句
语法:
for(定义循环变量;循环条件;更新循环变量){
循环体;
}
循环控制 :
- break 强制结束循环
- continue 结束当次循环,开始下一次循环
循环嵌套 : 在循环中嵌套添加其他循环
示例:
/*控制循环体的执行:break/continue*/
for(var i=1;i<10;i++){
console.log(i);
if(i==5){
console.log('--------')
//一旦执行break,循环体中后面的代码都不执行
break;
}
}
注:循环的是获取的每一个DOM元素值,for...in...
是用来循环对象的所有属性,DOM元素包括了输出的属性,因此不推荐使用for...in...
六、三元运算符
var a = 1
var b =2
var c = a>b ? a:b //如果a>b成立返回a,否则返回b
console.log(c)
七、异常处理
语法:
try{
这段代码从上至下运行,其中任何一个语句抛出异常该代码块即结束运行。
}catch(e){
如果try代码块中抛出异常,catch代码块中代码就会被执行;
e为一个局部变量,用来指向Error对象或者其他抛出的对象。
}finally{
无论try中代码是否有异常抛出(甚至是try代码块中有return语句)finally代码块中始终会被执行。
}
注:主动抛出异常:throw Error("xxx")