起因。。
最近在写代码的时候 做一个循环判断,
需要逐个判断循环项的某些值去做相对应的逻辑处理
大概处理的数据如下:
let maps = [
{
...balabala,
hasA:true,
hasB:true
}
]
for(let map of maps ){
if(map.hasA){
// some script A
}else if(map.hasB){
// some script B
}
}
之前习惯了switch的写法,手动自己写break,这里竟然以为 hasA和hasB的相关代码都会执行。。。。
还纠结了很久,后来查了一下GPT
if
:适合单独判断的条件,即使前面的条件满足,后续条件也会被检查。下列代码会执行some script A 也会执行 some script B
let maps = [
{
...balabala,
hasA:true,
hasB:true
}
]
for(let map of maps ){
if(map.hasA){
// some script A
}
if(map.hasB){
// some script B
}
}
else if
:适合多个条件的互斥判断,只要前面的条件满足,后续的else if
就不会被检查。 下列代码只执行some script A
let maps = [
{
...balabala,
hasA:true,
hasB:true
}
]
for(let map of maps ){
if(map.hasA){
// some script A
}else if(map.hasB){
// some script B
}
}
if-else if
是一个条件链,它是从上到下依次检查条件的:
if
条件。if
条件为true
,执行对应的代码块,然后跳过整个else if
链。if
条件为false
,再依次检查else if
条件,直到找到一个true
为止。false
,则执行else
(如果有的话)。917是什么意思 | 颈椎曲度变直是什么意思 | 吃完芒果后不能吃什么食物 | 弓山文念什么 | 糖尿病适合吃什么水果 |
失语是什么意思 | 空气炸锅什么牌子好 | 尿血是什么病 | 4.22什么星座 | 什么叫业障 |
仙代表什么生肖 | 去乙酰毛花苷又叫什么 | 3月22日什么星座 | 六堡茶属于什么茶 | 羊肠小道什么意思 |
女生喝红牛有什么影响 | 生日派对是什么意思 | 天长地久是什么意思 | 做梦吃鱼是什么意思 | 怀孕吃什么宝宝皮肤白 |
公鸭嗓是什么声音travellingsim.com | 流连忘返是什么生肖hcv7jop5ns4r.cn | 做肠镜检查什么bysq.com | 什么材质的拖鞋不臭脚hcv9jop5ns7r.cn | 自在什么意思hcv8jop1ns4r.cn |
因特网是什么意思hcv9jop1ns1r.cn | 黄瓜片贴脸上有什么效果gangsutong.com | 大宗商品是什么意思hcv7jop9ns6r.cn | 置之死地而后生是什么意思ff14chat.com | 考级有什么用hcv8jop3ns4r.cn |
眼睛发热是什么原因qingzhougame.com | 什么水果降血压hcv7jop6ns4r.cn | 荷兰豆炒什么好吃hcv9jop0ns3r.cn | 南瓜可以做什么美食hcv8jop2ns4r.cn | 梦见刨红薯是什么意思hcv9jop3ns3r.cn |
头皮长痘痘是什么原因hcv9jop3ns6r.cn | 2000年出生属什么tiangongnft.com | 沙里瓦是什么意思hcv9jop6ns0r.cn | omo是什么意思hcv9jop4ns2r.cn | 姜红枣红糖一起煮有什么效果hcv7jop5ns1r.cn |