首页 > 建站教程 > JS、jQ、TS >  三目运算符判断超过两种情况正文

三目运算符判断超过两种情况

    三目运算符也称为三元运算符,它是if/switch语句的一种简化写法,常被用于替代if--else的判断,这里,利用它的嵌套,也可以用于超过三种判断。比如下面是我爱模板网在做一个智能控制APP时遇到的情况:有三个场景,每个场景对应的id不同,但都是固定的,需要根据ID来得到对应的场景名:

如果用if语句就是:
1if(item.sceneCat === 1){
2 item.sceneName = '情景模式'
3}else if(item.sceneCat === 2){
4 item.sceneName = '联动场景'
5}else if(item.sceneCat === 3){
6 item.sceneName = '定时场景'
7}else{
8 item.sceneName = '未知场景'
9}
当然,用switch更简单:
01switch(item.sceneCat){
02 case 1:
03 item.sceneName = '情景模式';
04 break;
05 case 2:
06 item.sceneName = '联动场景';
07 break;
08 case 3:
09 item.sceneName = '定时场景';
10 break;
11 default:
12 item.sceneName = '未知场景';
13 break;
14}
那么,用三目运算符呢:
1item.sceneName = item.sceneCat === 1 ? '情景模式' : (item.sceneCat === 2 ? '联动场景' : (item.sceneCat === 3 ? '定时场景' : '未知场景'));
一句话搞定,非常简单。当然,最好不要嵌套太多,不然就容易混淆了。