JS中除了if else来表示条件判断外,一些简单的判断我们可以使用另一种方式表示:三元运算符
1.三元运算符
三元运算符顾名思义它由三部分组成:条件?条件成立处理的事情:条件不成立做的事情
例如:
var x = 2;
if(x>5){
x++;
}else{
x--;
}
//改写成三元运算符为:
x>5?x++:x--;
2.三元运算符中的占位问题
在平时的一些判断中,有时候没有else,那么这样的三元运算符怎么写?还以上面的代码为例
var x = 2;
if(x>5){
x++;
}
//改写成三元运算符为:
x>5?x++:null;
因此我们可以看出,这时候虽然没有了else,但是条件不成立时要处理的那个位置仍然要写些东西来代替。一般使用null、undefined等来占位;
3.条件中要处理多种语句的三元运算符
当我们条件成立或者不成立的时候,需要执行多行代码,那么这样的三元运算符怎么写?
var x = 2;
if(x>5){
x++;
console.log(x);
}else{
x--;
}
//改写成三元运算符为:
x>5?(x++,console.log(x)):x--;
可以看出来,我们上方的处理是使用括号括起来,并且每一项之间使用逗号分隔,这就是要处理多行代码时的操作