### []( )2、单分支条件分支语句
if (条件表达式) {
// 条件为真时,做的事情
} else {
// 条件为假时,做的事情
}
### []( )2,、多分支的 if 语句
if (条件表达式1) {
// 条件1为真时,做的事情
} else if (条件表达式2) {
// 条件1不满足,条件2满足时,做的事情
} else if (条件表达式3) {
// 条件1、2不满足,条件3满足时,做的事情
} else {
// 条件1、2、3都不满足时,做的事情
}
以上所有的语句体中,只执行其中一个。
[]( )Switch语句
---------------------------------------------------------------------------
语法格式
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
...
...
default:
语句体 n+1;
break;
}
**解释**: switch 可以理解为“开关、转换” 。case 可以理解为“案例、选项”。
**switch 和 case 后面的值:**
switch 后面的括号里可以是表达式或者值, 通常是一个变量(通常做法是:先把表达式或者值存放到变量中)。
JS 是属于弱类型语言,case 后面的值1、值2可以是 ‘a’、6、true 等任意数据类型的值,也可以是表达式。注意,在这里,字符串’6’和 数字 6 是不一样的。
**case 穿透:**
`switch` 语句中的`break`可以省略,但一般不建议(对于新手而言)。否则结果可能不是你想要的,会出现一个现象:`case` 穿透。
当然,如果你能利用好 `case` 穿透,会让代码写得十分优雅。
也就是当式子满足某个case的值时,执行该`case`里面的代码,如果其中没有`break`,将不会跳出`switch`,而是继续执行下一个`case`代码,直到遇到`break`or`default`
### []( )用 return 代替 if else
业务场景:
我们在实战业务中涉及到调接口时,一般会这样做:
* 接口返回码为 0 时,前端 resolve。
* 接口返回未登录时,前端跳转到登录页面。
* 接口返回其他情况,或者无返回时,前端 reject。
写法 :
1. if else 的写法:(不推荐)
if (res) {
if (+res.retCode == 0) {
resolve(res);
} else if (+res.retCode == 8888) {
goLogin();
} else {
reject(res);
}
} else {
reject();
}
2. return 的写法:(推荐)
if (!res || +res.retCode !== 0) {
if (+res.retCode === 8888) {
// 未登录
goLogin();
}
reject(res);
return;
}
最后
我可以将最近整理的前端面试题分享出来,其中包含HTML、CSS、JavaScript、服务端与网络、Vue、浏览器、数据结构与算法等等,还在持续整理更新中,希望大家都能找到心仪的工作。
篇幅有限,仅展示部分截图:
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » 【JavaScript复习二】选择结构if和Switch(1)
发表评论 取消回复