04JS - if语句/三元表达式和switch语句

1 if语句

   if语句:主要是判断
	 语法:
	 if(表达式){
	 	代码块
	 } 
	 执行过程:
	 先判断表达式的结果是true还是false 如果是true则执行代码块 如果是false大括号中的代码是不执行的


	  例子:
	  问小张帅不帅 则输出真的帅
	    var str = "帅";
	    if (str == "帅") {
	    	console.log("真的好帅");
	    }

2if-else语句

if-else语句
两个分支  只能执行一个分支

if-else的语法:
if(表达式){
	代码1
}else{
	代码2
}		    
	
 执行过程:
 如果表达式的结果是true则执行代码1 如果表达式的结果是false 则执行代码2
 	
 	案例1:
提示用户输入年龄-----
	var age = prompt("请输入您的年龄");//弹窗------并且有输入 输入的内容存储在age变量中
	console.log(age);

		var age = prompt("请输入您的年龄");
		//判断
		if (age >= 18) {
			console.log("可以看电影了");
		}else{
			console.log("看什么看 回家写作业去");
		}
		

	判断两个数字中的最大值:
		var num1 = 10;
		var num2 = 20;
		if (num1>num2) {
			console.log(num1);
		}else{
			console.log(num2);
		}


	判断一个数字是奇数还是偶数
		var number = parseInt(prompt("请输入一个数字"));
		if (number%2==0) {
			console.log("偶数");
		}else{
			console.log("奇数");
		}    
		
	判断一个年份是不是闰年
	var year = 1988;
	if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
		console.log("闰年");
	}else{
		console.log("平年");
	}

3 if-else if

 if-else if-else if-else if..........else.......多个分支 最终也是执行一个
  
 if-else if语句........
 
 语法:
 if(表达式1){
 	代码1
 }else if(表达式2){
 	代码2
 }else if(表达式3){
 	代码3
 }else{
 	代码4
 }
 
  else if---------这种结构可以写多个 具体多少个看需求
  else------结构是可以不用写的 具体也是看需求
 
 
  执行过程:
  	先判断表达式1的结果,
  	如果为true则执行代码1
  	如果为false则判断表达式2
  	如果表达式2为true则执行代码2
  	如果为false则判断表达式3
  	如果表达式3为true则执行代码3
  	否者执行代码4


  	例子:成绩的结果是在90到100(包含)之间则显示A级
    如果成绩是80到90(包含)之间则显示B级
    如果成绩是70到80(包含)之间则显示C级
    如果成绩是60到70(包含)之间则显示D级
    如果成绩是0到60(包含)之间则显示E级

实现代码:
var score = Number(prompt("请输入您的成绩"));
if (!isNaN(score)) {
	if (score > 90 && score <= 100) {
		console.log("A级");
	}else if (score > 80 && score <= 90) {
		console.log("B级");
	}else if (score > 70 && score <= 80) {
		console.log("C级");
	}else if (score > 60 && score <= 70) {
		console.log("D级");
	}else{
		console.log("E级");
	}

}

三元表达式

三元表达式:
运算符号:  ? :
语法:
	 var 变量 =  表达式1?表达式2:表达式3;
执行过程:
  表达式1的结果是true还是false
    如果是true则执行表达式2 然后把结果给变量 
    如果表达式1的结果是false 则执行表达式3 把结果给变量
    
    //两个数字中的最大值
		 var x = 10;
		 var y = 20;
		 var result = x > y ? x : y;
		 console.log(result);

	//显示成年还是未成年
		var age = 18;
		var result2 = age >= 18 ? "成年了" : "未成年";
		console.log(result2);

swith-case语句

swith-case语句-------分支语句-----多分支语句
  		 语法:
  		 switch(表达式){
  		 	case 值1:
  		 		代码1;
  		 		break;
  		 	case 值2:
  		 		代码1;
  		 		break;
  		 	case 值3:
  		 		代码1;
  		 		break;
  		 	case 值4:
  		 		代码1;
  		 		break;
  		 	.....多个case
  		 	default:代码5;	
  		 }
  		 
  	
  	注意问题:
  	default后面的break是可以省略的
  	default也可以省略
  	
  	
  	switch-case语句中和case后面的值做比较的时候使用的是严格的模式
  	break也是可以省略的
  	
  	执行过程:
  	获取表达式的值  和值1做比较 如果一样 则执行代码1 遇到break则跳出整个语句 后面代码不执行
  	如果表达式的值和值1不一样 则和值2做比较 如果相同则执行代码2 遇到break跳出
  	否则和值3比较 相同则执行代码3  遇到break跳出 否则和值4做比较 相同则执行代码4  遇到break跳出 否则直接执行代码5
  	
  	 
  	 
  	 例子:获取一个人的成绩级别 如果是A级则显示90到100直接的分数
  	 	
  	 如果是B级则显示80到90分
  	 如果是C级则显示70到80之间
  	 如果是D级则显示60到70之间
  	 	 *如果是E级则显示59到0之间
  	  
  	 	
  	 	var jiBie = "E";
  	 	switch(jiBie){
  	 		case "A":
  	 			console.log("90到100");
  	 			break;
  	 		case "B":
  	 			console.log("80到90");
  	 			break;
  	 		case "C":
  	 			console.log("70到80");
  	 			break;
  	 		case "D":
  	 			console.log("60到70");
  	 			break;
  	 		case "E":
  	 			console.log("0到59");
  	 			break;
  	 	}


  	  注意问题
  	 	
  	 	 var num = "10";//字符串
  	 	 switch(num){
  	 	 	case 10:
  	 	 	 	console.log("数字的10");
  	 	 	 	break;
  	 	 	case "10":
  	 	 		console.log("字符串的10");
  	 	 		break;
  	 	 }


  	 	 根据数字显示对应的星期
  	     var num = parseInt(prompt("请输入一个星期的数字"));
  	     switch(num){
  	     	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("您输入有误");
  	     }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值