JavaScript多元运算符
function test(p){ var a=5,b=12; return p>1?p<b?p>b:p=6:p=3; // 这一行中出现了多个问号和冒号,看起来很乱怎么办呢 } document.write(test(9));
其实很简单,寻找到多元运算符的头 ? 和尾 : 就好办多了
就成了这样:
p>1?p<b?p>b:p=6:p=3 p>1? 整体 :p=3
1、当 p>1 时返回 p<b?p>b:p=6
- 1.1、当 p<b 时返回 p>b
- 1.2、当 p>=b 时返回 p=6
2、当 p<=1 是返回 p=3 所以先执行 1
3、实例中当 p=9 的时候,返回 p<b?p>b:p=6 接着执行 1.1,当 p=9<12 时,返回 p>b,即 9>12,条件不成立所以最终结果为 false。