|
|
请马上登录,朋友们都在花潮里等着你哦:)
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 马黑黑 于 2023-6-21 08:20 编辑
此前,我介绍过 JS 的三元运算符,JS三元运算符 - 马黑黑教程专版 - 花潮论坛 - Powered by Discuz! (huachaowang.com)。这里再讲一次,免得小童鞋们老发蒙。
我们来做个简单的数学题:已知a和b的值,根据ab的大小求c,具体题意是,如果a大于等于b,则 c = a - b,反之,c = a + b。
用 if(如果)... else(否则)... 语句,容易看得懂,但代码多几行:
<script>
let a = 20, b = 10, c; // 声明变量并给 a、b 赋值
if(a >= b) {
c = a - b;
} else {
c = a + b;
}
console.log(c); // 在控制台显示结果
</script>
用 三元运算符,代码少,但不容易看懂:
<script>
let a = 20, b = 10, c; // 声明变量并给 a、b 赋值
c = a >= b ? a - b : a + c;
console.log(c); // 在控制台显示结果
</script>
我们来分析一下三元那一句:
c = a >= b ? a - b : a + c;
c = 是求 c 的表达;
a >= b ? 是条件语句,问号 ? 相当于“如果”,即如果 a >= b 这个条件成立;
a - b 是执行语句一,它放在 ? 的后面,意思是如果 a >= b 这个条件成立,则执行 a - b 这一句;
: a + c 中,冒号 : 是“否则”的意思,其后紧跟的 a + c 是执行语句二,即,反之执行 a + c 这一句。
三元运算语句不好懂,细细体会我上面的解释方能领悟。理解了之后,还要明白三元运算语句的多执行语句和三元运算的嵌套,这里只讲讲三元运算语句的多执行语句。
多执行语句,我们需要改装一下三元的句式:
条件 ? (执行语句群一) : (执行语句群二);
条件语句必须放前面,接着用问号 ? 来问条件是否成立,如果成立,则执行语句群一的语句集合;接着用冒号 :表示否则,就是若条件不成立,则执行语句群二的语句集合。
语句群可以是多句,群一、群二的句数可以不同。每一个语句群都需要用小括号包裹起来,句子之间用小角逗号隔开,最后一个句子后面不要小角逗号。例如(我们增加了一个布尔变量 do):
a >= b ? (c = a - b, do = true) : (c = a + b, do = false);
上句只是举个样式,实际应用中可以依照这个结构来组织自己的三元语句代码(例如我们在帖子中经常使用的音乐播放/暂停时处理关键帧动画和视频)。
|
评分
-
| 参与人数 4 | 威望 +160 |
金钱 +320 |
经验 +160 |
收起
理由
|
红影
| + 50 |
+ 100 |
+ 50 |
赞一个! |
樵歌
| + 50 |
+ 100 |
+ 50 |
赞一个! |
南无月
| + 30 |
+ 60 |
+ 30 |
赞一个! |
醉美水芙蓉
| + 30 |
+ 60 |
+ 30 |
赞一个! |
查看全部评分
|