目录

  • 前言
  • 一、什么是选择结构?
  • 1.选择结构的含义
  • 2.选择结构分类
  • 二、if 语句
  • 1.if 结构之单路分支
  • 2.if 结构之双路分支
  • 3.if 结构之多路分支
  • 4.if 嵌套
  • 5.if 要注意的一些地方
  • 三、switch 条件开关语句
  • 1.switch 基础示例
  • 2.switch 要注意的一些地方
  • 写在最后



前言

JS的程序结构分为3种,顺序结构、循环结构与选择结构。
顺序结构就是指一段程序自上而下按照它们的先后顺序执行。
循环结构我在前面有写出来,如果你感兴趣的话,也可以看一下。
while这个在最后有总结两种循环的区别,以及怎么选择两种循环。
接下来就是我们要说的选择的结构了。


一、什么是选择结构?

1.选择结构的含义

选择结构顾名思义就是在由上到下执行代码的过程中,会根据不同的条件,选择不同的路径代码,来执行不同的动作。也可以说是用来判定给条件,根据判断的结果,来控制程序的流程。

jQuery原生Switch切换按钮 js的switch_选择结构


2.选择结构分类

选择结构相信看了标题你应该知道,选择结构有两种方式if与switch。
if 常用于区间判断。
switch 常用于等值判断。
怎样来选择这两种:
能用switch语句实现的就一定可以使用if实现,但是反之不一定。一般情况下区间判断就采用if,等值判断使用switch

二、if 语句

只有当指定条件为true时,才会执行代码。

1.if 结构之单路分支

如果条件表达式为true(真)就执行语句块,否则就跳过if执行后面的语句。
语法示例:

//if(条件==true){
//只有当条件为true时执行的代码
//}

if(4<5==true){//后面的==true可以省略不写
alert("给博主点个赞吧")
}

注意:请使用小写的if,使用大写IF会生成JavaScript错误!


2.if 结构之双路分支

理论: 1.如果条件表达式为true(真),则执行语句块1,否则就执行语句块2。
2.else不能脱离if单独使用。
3.if和else后面{}里的代码块只有一个会被执行。
语法示例:

//if  else语句
//if(条件){
//当条件为true(真)时执行的代码
//}else {
//当条件不为true(真)时执行的代码
//}

if(4>5){
alert("给博主点个赞吧")
}else{
alert("给博主点个三连吧")
}

3.if 结构之多路分支

理论: 1.如果条件表达式为true(真),则执行语句块1,其他不执行。
2…如果条件表达式1不成立,则去判断条件表达式2。如果条件表达式2成立,就执行语句块2。否则就接着往下判断,以此类推,全部都不满足就去执行语句块3。
3.众多条件表达式中,只有一个会被执行。
4.只有前面表达式内容都不满足,才会执行else中的内容。
语法示例:

//if(条件表达式1){
//语句块1
//}else if(条件表达式2){
//语句块2
//}else if(条件表达式n){
//语句块n
//}else{
//语句块3
//}

if(4>5){
alert("给博主点个赞吧")
}else if(6>7){
alert("给博主点个关注吧")
}else if(8>9){
alert("给博主点个收藏吧")
}else{
alert("给博主点个三连吧")
}

4.if 嵌套

if 中可以继续嵌套 if - else,else中也可以继续嵌套 if -else
语法示例:

//if (条件表达式1) {
	//语句块1 - 1;
		//if (条件表达式2) {
			//语句块2 - 1;
		//} else {
			//语句块2 - 1;
		//}
	//语句块1 - 2;
//} else {
	//if (条件表达式3) {
		//语句块3 - 1;
		//} else {
			//语句块3 - 2;
		//}
	//}

if (5<6) {
	document.write("博主帅气气"+"<br />")
		if (5>7) {
			document.write("这里错了")
		} else {
			document.write("这里对了"+"<br />")
		}
	document.write("点个赞")
} else {
		if (6<7) {
			document.write("上面已经成立,这里不显示")
		} else {
			document.write("上面已经成立,这里不显示")
		}
	}

效果如下:

jQuery原生Switch切换按钮 js的switch_javascript_02


5.if 要注意的一些地方

1. 只有一条语句时if后面的大括号可以省略。
语法示例:

if(8>7)
   console.log("发发发");

2. if else是一个整体,当 if else后面的大括号被省略时,else会自动和距离最近的一个 if 匹配。
语法示例:

if (5>6)
	if (6<7)
		console.log("A");
	else // 这个else会匹配上面的 if(1)
		console.log("B");
else // 这个else会匹配上面的 if(0)
	if (5<6)
		console.log("C"); // 最终输出C
	else
		console.log("D");

3. 分号“;”也是一条语句, 空语句
语法示例:

if (10 > 2); {
	console.log("10 > 2");
}

4. 非Boolean类型的值,会先转换为Boolean类型后再判断
语法示例:

if (0) {
	console.log("123\n"); // 不会被执行
}

三、switch 条件开关语句

1.switch 基础示例

语法示例:

//switch case语句
  switch(变量/表达式){
      case 值1:
      执行代码块1 
      break; 
      case 值2:
      执行代码块2 
      break; 
      default:
      与case1和case2不同时执行的代码
  }

理论:1.计算条件表达式的值。并逐个与case后面表达式的结果值比较
2.当条件表达式的值与某个表达式的值全等时,执行其后的语句,并且不会再与其它case进行比较
3.如条件表达式的值与所有case后的表达式均不相同时,则执行default后的语句。
语法示例:

var xq = new Date().getDay();//0-6
var week = document.getElementById("week");
switch(xq){
	case 0:
	week.innerHTML = "星期日";
	break;
	case 1:
	week.innerHTML = "星期一";
	break;
	case 2:
	week.innerHTML = "星期二";
	break;
	case 3:
	week.innerHTML = "星期三";
	break;
	case 4:
	week.innerHTML = "星期四";
	break;
	case 5:
	week.innerHTML = "星期五";
	break;
	case 6:
	week.innerHTML = "星期六";
	break;
}

2.switch 要注意的一些地方

1.JavaScript中case判断是否相等时是全等于(= = =), 而不是等于(==),也就是说既会判断类型是否相等又会判断值是否相等。
2.case后面可以是常量也可以是变量。
3.判断时会先计算表达式的值,再判断。
4.default可以省略default语句可以写在switch语句中的任意位置。无论写在哪,都只会在所有case不匹配才执行。
5.可以利用switch的穿透力简化代码。


写在最后

jQuery原生Switch切换按钮 js的switch_前端_03

👍 jQuery原生Switch切换按钮 js的switch_javascript_04

⭐️ jQuery原生Switch切换按钮 js的switch_javascript_05

✏️ jQuery原生Switch切换按钮 js的switch_javascript_06