普通的三目运算符比较简单,就不做介绍了,如(expr1)?(expr2):(expr3),之前在使用三目运算符嵌套的时候,我是这样用的(expr1)?(expr2)?(expr3)?(expr4):(expr5))),现在想想这种方法有点low,那三目运算符如何嵌套呢?
第一种嵌套情况
false?'true':true?'t':'f'
输出t
false?'true':false?'t':'f'
输出f
第二种嵌套情况
true?true?'a':'b':'c'
输出a
true?false?'a':'b':'c'
输出b
false?false?'a':'b':'c'
输出c
总的来看,三目运算符嵌套的写法,使得代码可读性差,简单业务场景下可以试着使用,如果是较复杂的场景,还是老老实实使用if/else吧,虽然代码量大了,但是有语义化,且逻辑清晰。