js里面的代码是有执行顺序的,通过一些特殊的方式控制那些代码如何执行 —— 流程控制
顺序结构
按照从上到下的顺序,一行不漏的执行
分支结构
在逻辑上有多个分支,只会选择一个分支执行
循环结构
重复的代码,可以使用循环的方式实现多次
表达式
// 下面都可以称为表达式12; // 结果是12var a = 10; // 结果是 10a++; // 结果是 115 > 6; // 结果是 false// ...
语句可以理解为一个行为,一般在行为和行为之间,都会使用 ; 隔开
console.log(12); // 行为就是输出了一个12在控制台
alert(‘helloworld’); // 行为就是弹出了个提示框
简而言之:一个程序可以由多个语句组成,一个语句可以由多个表达式组成
分支结构(判断)
if结构
只有一个条件的判断
if( 条件表达式 ){条件表达式的结果是true的时候要执行的代码}var gender = prompt('请问您的性别是男的吗');if( gender === '男' ){alert('男厕所在二楼的最东边,请去吧');}
两个条件的判断
if( 条件表达式 ){条件表达式的结果是true的时候要执行的代码}else {条件表达式的结果是false的时候要执行的代码}var gender = prompt('请告诉我你的性别');if(gender === '男'){alert('男厕所在二楼的最东边,请去吧');}else {alert('女厕所在3楼的西边');}
多个条件的判断
if( 条件表达式1 ){条件表达式1的结果是true的时候要执行的代码}else if(条件表达式2){条件表达式2的结果是true的时候要执行的代码}else if(){}// 如果还有更多的判断,继续写 else if ()else {以上的条件都不为true,就会执行这里的代码}var gender = prompt('请告诉我您的性别');// 男的上二楼if(gender === '男'){alert('上二楼');}else if(gender === '女'){// 如果是女的,上3楼alert('上三楼');}else if(gender === '人妖'){alert('滚');} else {alert('我没有听明白您的意思');}
switch结构
在js里面如果是比较固定值,推荐使用swtich-case结构
语法:
switch (变量){
case 要比较的固定的值1:
变量和 固定的值1 === 的时候要执行的代码
break;
case 要比较的固定的值2:
变量和 固定的值2 === 的时候要执行的代码
break;
case 要比较的固定的值3:
变量和 固定的值3 === 的时候要执行的代码
break;
default:
当以上所有的条件都不成立的时候,代码在这里执行
break;
}
switch (gender) {case '男':alert('去二楼');break;case '女':alert('去三楼');break;case '人妖':alert('滚');break;default:alert('人家没听懂');break;}
细节:
1.default不是必须的
2.break的作用是结束判断,如果不想要,也可以不写
3.变量和固定值的比较是 === 严格等于
三元表达式
三元表达式的语法
判断条件 ? 语句1 : 语句2
表达式1 ? 表达式2 : 表达式3
表达式1 ? 表达式2 : 表达式3a > b ? a : b// 如果表达式1 成立, 那么就执行表达式2// 如果表达式1 不成立, 那么就执行表达式3//例如: 求二个数字中谁更大var a = 10; var b = 20;var max = a > b ? a : b;console.log(max);
