JavaScript分支语句
程序执行顺序
顺序---->从上向下,顺序执行代码
分支---->根据条件判断,决定执行代码的分支
循环---->让特定代码重复执行
代码块的概念
在开发中,一行代码很难完成某一个特定的功能,我们就会将这些代码放到一个代码块中
// 一个代码块
{
var num1 = 10;
var num2 = 20;
var result = num1 + num2;
}
// 一个对象
var info = {
name:"webKing",
age:18
}
在JavaScript中,我们可以通过流程控制语句来决定如何执行一个代码块:
通常会通过一些关键字来告知js引擎代码要如何被执行;
比如分支语句、循环语句对应的关键字等;
比如这种结构:
if(){
}
if分支语句
单分支结构
单分支:if(...) 语句计算括号里的条件表达式,如果计算结果是 true,就会执行对应的代码块。
if(条件表达式){
代码块
}
if语句补充细节
补充一:如果代码块中只有一行代码,那么{}可以省略
补充二:if (…) 语句会计算圆括号内的表达式,并将计算结果转换为布尔型(Boolean)
✓转换规则和Boolean函数的规则一致;
✓数字0、空字符串""、null、undefined 和NaN都会被转换成false,因为它们被称为“假值(falsy)”;
✓其他值被转换为true,所以它们被称为“真值(truthy)”;
多分支结构
多分支语句一:
if(){
}
else{
}
多分支语句二:
if(){
<!-- 代码块一 -->
}
else if(){
<!-- 代码块二 -->
}
else if(){
<!-- 代码块三 -->
}
else {
<!-- 代码块四 -->
}
switch 分支语句
switch是分支结构的一种语句:
它是通过判断表达式的结果(或者变量)是否等于case语句的常量,来执行相应的分支体的;
与if语句不同的是,switch语句只能做值的相等判断(使用全等运算符===),而if语句可以做值的范围判断;
switch的语法:
switch 语句有至少一个 case 代码块和一个可选的 default 代码块
// 案例:有三个按钮 a,b,c 点击a 打印上一层,点击b 打印中间层 ,点击c 打印下一层
// 上一层:0
// 中间层:1
// 下一层:2
var btnIndex = Number (prompt("请输入0-2"));
switch (btnIndex){
case 0:
console.log("上一层")
break
case 1:
console.log("中间层")
break
case 2:
console.log("下一首")
break
default:
console.log(" 当前索引有问题!")
}
case穿透问题:
一条case语句结束后,会自动执行下一个case的语句;
这种现象被称之为case穿透;
◼ break关键字
通过在每个case的代码块后添加break关键字来解决这个问题;
◼ 注意事项:这里的相等是严格相等。
被比较的值必须是相同的类型才能进行匹配。