使用&&和||结合var c=a&&a.b||c来代替三元运算符var c=a&&a.b?a.b:b
以下两句话参考自:https://blog.csdn.net/u011364720/article/details/86598766
1)&&表达式中只要有假则返回假,||表达式中只要有真则返回真。
2)在左右都为真的情况下,&&返回右边的值,||返回左边的值。
a.举例:首先创建一个对象:
var objA={
one:{
two:5
}
}
b.我们的需求是:如果对象中two为真,就获取这个数值成为结果,否则我们就是让9为结果
c.一般使用三元运算符:
var result=objA.one&&objA.one.two?objA.one.two:9
result
5
结果是5.
d.接下来使用&&和||结合:
var result=objA.one&&objA.one.two||9
result
5
结果一致,但是少了objA.one.two。短了一截。