普通的三目運算符比較簡單,就不做介紹了,如(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吧,雖然代碼量大了,但是有語義化,且邏輯清晰。